

typedef  unsigned short unicode_char;


#ifndef BREW_MOD
extern unicode_char *c2u(const char *cp, int *err, int *size);
#endif

#ifdef BREW_MOD
extern unicode_char *c2u(const char *cp, int *err);
#endif	

#if 0
static const unsigned gb2312_revhash_size=1050;
static const unicode_char gb2312_revtable_uc[]={
21000,23100,25200,30450,32550,33600,36750,1050,64050,22051,29401,32551,36751,1051,64051,21002,
22052,26252,30452,32552,36752,1052,64052,25203,28353,31503,32553,33603,36753,1053,64053,23104,
28354,32554,1054,64054,21005,22055,24155,27305,31505,32555,36755,1055,21006,25206,29406,30456,
32556,33606,34656,36756,1056,64056,26257,27307,30457,32557,33607,36757,1057,24158,27308,29408,
31508,32558,36758,1058,64058,21009,25209,28359,29409,31509,32559,33609,34659,36759,1059,21010,
22060,23110,30460,32560,34660,36760,1060,64060,22061,24161,32561,34661,36761,1061,64061,24162,
25212,26262,30462,32562,36762,1062,64062,23113,26263,28363,31513,32563,36763,1063,64063,21014,
23114,25214,32564,36764,1064,21015,22065,25215,30465,31515,32565,33615,1065,64065,21016,22066,
25216,29416,32566,33616,36766,1066,64066,21017,28367,29417,33617,36767,1067,64067,19968,21018,
22068,30468,31518,32568,33618,1068,64068,19969,21019,26269,28369,1069,64069,22070,25220,29420,
31520,32570,33620,34670,1070,64070,19971,21021,28371,29421,30471,36771,1071,28372,29422,30472,
34672,1072,9472,64072,22073,28373,29423,30473,1073,9473,21024,29424,31524,1074,9474,64074,
19975,22075,23125,25225,28375,29425,30475,31525,1075,9475,64075,19976,25226,29426,31526,33626,
34676,36776,1076,9476,64076,19977,29427,30477,33627,36777,1077,9477,64077,19978,21028,24178,
28378,29428,31528,32578,33628,34678,1078,9478,64078,19979,22079,24179,26279,36779,1079,9479,
19980,23130,24180,26280,31530,32580,33630,1080,9480,64080,19981,29431,31531,32581,33631,1081,
9481,64081,19982,21032,24182,28382,29432,31532,33632,1082,9482,21033,25233,28383,33633,34683,
1083,9483,19984,24184,25234,28384,29434,31534,34684,36784,37834,1084,9484,19985,21035,25235,
28385,29435,33635,34685,36785,1085,9485,64085,24186,26286,28386,29436,33636,34686,38886,1086,
9486,19987,21037,24187,25237,31537,33637,38887,1087,9487,19988,21038,23138,24188,25238,28388,
33638,1088,9488,19989,24189,25239,28389,30489,31539,33639,38889,1089,9489,64089,19990,21040,
25240,28390,30490,33640,34690,36790,38890,1090,9490,64090,24191,29441,33641,34691,38891,1091,
9491,64091,19992,22092,24192,25242,26292,28392,32592,33642,38892,1092,9492,64092,19993,21043,
22093,23143,25243,28393,29443,32593,33643,34693,36793,38893,1093,9493,64093,19994,22094,31544,
33644,35744,1094,9494,64094,19995,30495,33645,35745,1095,9495,64095,19996,21046,23146,24196,
30496,31546,32596,33646,34696,35746,37846,1096,9496,64096,19997,21047,25247,26297,32597,33647,
35747,36797,1097,9497,19998,21048,24198,25248,30498,31548,35748,36798,1098,9498,21049,24199,
25249,32599,34699,35749,38899,1099,9499,21050,22100,25250,29450,31550,32600,35750,1100,9500,
21051,34701,35751,36801,38901,8451,1101,9501,20002,24202,25252,26302,30502,32602,35752,36802,
38902,1102,9502,64102,21053,22103,24203,25253,35753,1103,9503,64103,20004,22104,28404,29454,
30504,35754,36804,9504,20005,21055,22105,30505,33655,35755,36805,1105,9505,21056,23156,25256,
33656,9506,20007,21057,23157,24207,31557,32607,34707,35757,36807,9507,20008,21058,22108,23158,
24208,35758,36808,9508,21059,23159,24209,25259,28409,29459,30509,31559,32609,33659,35759,9509,
20010,25260,32610,33660,35760,9510,20011,24211,29461,30511,31561,33661,34711,9511,20012,23162,
24212,29462,35762,9512,20013,24213,29463,31563,35763,9513,22114,24214,31564,35764,36814,9514,
24215,25265,35765,9515,20016,21066,22116,32616,35766,36816,9516,23167,24217,29467,30517,31567,
32617,35767,36817,9517,20018,21068,24218,28418,29468,30518,31568,32618,35768,9518,21069,25269,
29469,30519,31569,33669,34719,35769,36819,9519,20020,22120,24220,29470,30520,31570,33670,35770,
36820,8470,9520,22121,36821,9521,20022,21072,22122,24222,28422,30522,31572,32622,35772,9522,
21073,22123,24223,25273,29473,33673,35773,9523,20024,22124,24224,29474,30524,31574,35774,36824,
9524,20025,25275,28425,32625,35775,36825,9525,20026,21076,25276,31576,32626,35776,9526,20027,
25277,29477,35777,36827,9527,21078,30528,31578,32628,33678,34728,35778,36828,9528,20029,22129,
24229,25279,26329,30529,31579,35779,36829,9529,20030,24230,35780,36830,9530,20031,24231,26331,
28431,29481,30531,31581,34731,35781,36831,9531,25282,26332,29482,33682,34732,35782,9532,26333,
29483,32633,33683,34733,9533,21084,22134,25284,29484,31584,35784,36834,9534,20035,25285,28435,
30535,34735,35785,9535,21086,23186,25286,28436,29486,31586,35786,36836,9536,20037,24237,25287,
28437,35787,36837,9537,25288,32638,33688,35788,36838,9538,20039,21089,22139,25289,29489,34739,
35789,9539,20040,22140,25290,35790,36840,9540,20041,32641,33691,34741,35791,36841,9541,25292,
26342,29492,33692,36842,9542,20043,21093,24243,25293,35793,36843,9543,20044,23194,25294,30544,
33694,35794,9544,20045,21095,23195,24245,26345,29495,30545,35795,36845,9545,20046,24246,25296,
29496,33696,34746,35796,36846,9546,20047,21097,24247,29497,35797,9547,20048,21098,24248,25298,
28448,31598,35798,36848,22149,24249,25299,34749,35799,20050,22150,25300,32650,35800,20051,31601,
35801,36851,20052,25302,26352,28452,29502,31602,32652,34752,35802,21103,25303,29503,35803,20054,
24254,25304,26354,30554,32654,33704,35804,25305,26355,30555,31605,33705,35805,36855,20056,21106,
25306,26356,33706,35806,36856,20057,25307,28457,31607,33707,35807,36857,22158,25308,28458,34758,
35808,22159,26359,28459,31609,35809,20060,23210,32660,35810,20061,25311,26361,28461,30561,31611,
35811,36861,20062,30562,33712,34762,35812,20063,22163,28463,30563,33713,34763,35813,20064,25314,
26364,31614,33714,35814,36864,20065,24265,25315,28465,30565,33715,35815,36865,24266,26366,30566,
31616,32666,33716,35816,36866,21117,25317,26367,28467,29517,35817,36867,23218,25318,26368,30568,
33718,36868,21119,23219,25319,32669,33719,34769,35819,36869,20070,25320,28470,29520,32670,33720,
34770,35820,36870,21121,23221,25321,30571,31621,32671,33721,34771,35821,21122,29522,30572,33722,
35822,20073,24273,32673,35823,36873,23224,24274,25324,27424,33724,35824,36874,24275,25325,27425,
33725,35825,36875,25326,26376,27426,32676,35826,25327,26377,27427,29527,35827,36877,21128,24278,
26378,27428,28478,33728,35828,22179,25329,26379,31629,32679,33729,34779,35829,36879,20080,23230,
35830,36880,20081,25331,26381,27431,35831,36881,25332,31632,35832,36882,20083,23233,24283,33733,
35833,23234,25334,26384,34784,35834,36884,25335,30585,33735,35835,21136,28486,29536,31636,35836,
36886,28487,31637,32687,35837,36887,26388,32688,33738,35838,21139,26389,30589,31639,34789,35839,
25340,30590,32690,33740,35840,36890,22191,23241,25341,26391,28491,30591,35841,36891,25342,27442,
30592,35842,25343,28493,33743,35843,36893,20094,23244,31644,34794,35844,36894,8544,25345,26395,
31645,35845,36895,8545,24296,25346,30596,32696,35846,36896,8546,21147,26397,27447,30597,32697,
35847,36897,8547,24298,29548,33748,34798,35848,36898,8548,21149,22199,26399,27449,29549,31649,
8549,21150,23250,27450,31650,32700,33750,35850,37950,8550,21151,25351,29551,32701,35851,8551,
20102,21152,23252,25352,33752,35852,36902,8552,21153,25353,32703,35853,8553,20104,21154,22204,
23254,27454,28504,30604,31654,35854,8554,20105,21155,30605,31655,32705,35855,8555,23256,26406,
30606,31656,33756,35856,20107,31657,33757,35857,20108,24308,25358,26408,28508,31658,35858,20109,
27459,30609,31659,32709,33759,34809,35859,36909,20110,21160,23260,24310,26410,28510,30610,31660,
33760,35860,36910,40060,20111,21161,24311,25361,26411,31661,33761,35861,36911,21162,26412,27462,
35862,20113,21163,26413,27463,35863,40063,20114,21164,23264,24314,28514,32714,34814,35864,164,
20115,21165,23265,26415,27465,31665,33765,35865,40065,20116,25366,29566,32716,35866,40066,20117,
23267,26417,35867,36917,167,22218,24318,27468,28518,31668,32718,35868,36918,168,21169,24319,
33769,34819,35869,40069,20120,21170,23270,24320,25370,26420,33770,36920,40070,21171,24321,25371,
26421,35871,40071,20122,24322,29572,31672,35872,40072,20123,23273,24323,25373,30623,35873,36923,
24324,25374,30624,32724,35874,36924,23275,25375,28525,29575,32725,35875,40075,25376,26426,28526,
30626,33776,34826,35876,36926,176,20127,25377,29577,33777,35877,40077,177,20128,22228,24328,
25378,32728,33778,35878,40078,20129,25379,26429,29579,30629,35879,36929,39029,20130,24330,25380,
28530,35880,36930,39030,40080,22231,23281,24331,25381,27481,30631,31681,35881,39031,40081,65281,
20132,21182,26432,28532,29582,35882,36932,39032,40082,9632,65282,20133,21183,30633,35883,39033,
9633,65283,20134,22234,25384,26434,30634,33784,35884,39034,40084,65284,20135,22235,24335,26435,
29585,32735,33785,34835,35885,36935,39035,40085,65285,20136,25386,28536,30636,31686,32736,35886,
39036,65286,20137,21187,22237,24337,25387,31687,32737,34837,35887,39037,65287,22238,26438,28538,
34838,35888,39038,65288,20139,22239,24339,33789,35889,39039,65289,20140,22240,26440,27490,28540,
29590,30640,35890,39040,40090,65290,20141,21191,22241,24341,25391,26441,27491,32741,35891,36941,
39041,40091,65291,20142,22242,27492,31692,32742,35892,39042,40092,8592,65292,21193,24343,27493,
30643,33793,34843,35893,36943,39043,8593,65293,22244,24344,25394,26444,27494,35894,36944,39044,
40094,8594,65294,21195,27495,29595,30645,32745,33795,35895,36945,37995,39045,40095,8595,65295,
20146,26446,33796,36946,39046,40096,65296,20147,24347,26447,31697,36947,39047,40097,65297,26448,
27498,28548,33798,39048,40098,65298,20149,26449,29599,31699,34849,39049,40099,65299,21200,32750,
34850,39050,40100,9650,65300,22251,24351,25401,26451,30651,36951,40101,9651,65301,21202,24352,
25402,28552,29602,32752,36952,39052,40102,65302,22253,28553,30653,32753,33803,39053,40103,65303,
20154,26454,33804,40104,65304,20155,23305,25405,30655,31705,32755,33805,35905,36955,39055,40105,
65305,21206,22256,28556,31706,33806,39056,65306,22257,24357,28557,33807,39057,40107,65307,21208,
24358,28558,65308,20159,24359,29609,31709,33809,39059,40109,65309,20160,22260,25410,26460,35910,
39060,40110,65310,20161,22261,24361,25411,29611,35911,65311,20162,24362,26462,36962,39062,40112,
65312,20163,25413,26463,27513,31713,32763,35913,36963,39063,40113,65313,20164,25414,26464,29614,
32764,39064,40114,65314,20165,21215,22265,24365,26465,27515,29615,36965,40115,215,65315,20166,
22266,27516,29616,33816,34866,35916,39066,40116,65316,20167,24367,25417,31717,39067,40117,65317,
23318,29618,31718,32768,36968,39068,40118,65318,20169,22269,23319,24369,25419,26469,29619,30669,
32769,39069,40119,65319,20170,21220,22270,25420,33820,39070,40120,9670,65320,20171,22271,25421,
27521,32771,33821,38021,39071,9671,65321,25422,26472,27522,28572,31722,32772,38022,39072,40122,
65322,20173,25423,26473,27523,29623,32773,34873,36973,38023,39073,40123,65323,20174,25424,26474,
27524,32774,36974,38024,39074,40124,65324,224,22275,35925,38025,40125,9675,65325,225,22276,
27526,29626,31726,34876,38026,39076,65326,20177,24377,26477,27527,28577,29627,38027,39077,65327,
22278,24378,33828,38028,39078,9678,65328,20179,25429,26479,27529,30679,31729,32779,33829,38029,
39079,9679,65329,20180,22280,24380,26480,27530,32780,33830,34880,35930,36980,38030,65330,20181,
22281,27531,32781,33831,36981,38031,40131,65331,20182,21232,22282,26482,29632,33832,38032,40132,
12832,65332,232,20183,26483,27533,28583,30683,40133,12833,65333,233,20184,24384,29634,30684,
32784,34884,38034,40134,12834,65334,234,20185,26485,31735,34885,38035,40135,12835,65335,32786,
38036,12836,65336,236,26487,35937,38037,12837,65337,237,25438,27538,32788,35938,40138,12838,
65338,20189,25439,27539,32789,36989,38039,40139,12839,65339,20190,29640,30690,31740,32790,40140,
12840,65340,20191,21241,25441,29641,30691,32791,33841,36991,38041,40141,12841,65341,21242,25442,
26492,27542,29642,31742,32792,34892,36992,38042,40142,65342,242,20193,25443,30693,32793,34893,
38043,40143,65343,243,26494,36994,38044,40144,65344,20195,26495,28595,29645,30695,36995,38045,
65345,20196,21246,23346,27546,32796,35946,38046,65346,20197,21247,25447,26497,27547,29647,30697,
35947,38047,40147,247,65347,21248,23348,28598,29648,33848,38048,40148,65348,25449,29649,30699,
38049,40149,65349,249,20200,22300,24400,26500,30700,32800,34900,37000,38050,40150,65350,250,
23351,28601,30701,31751,38051,40151,65351,20202,24402,30702,32802,33852,38052,40152,65352,252,
20203,21253,22303,24403,25453,26503,27553,33853,34903,37003,38053,40153,65353,20204,21254,25454,
38054,65354,24405,26505,31755,32805,34905,35955,38055,65355,21256,24406,31756,32806,38056,40156,
65356,22307,24407,25457,26507,29657,30707,32807,38057,40157,65357,257,20208,24408,28608,32808,
38058,40158,65358,31759,32809,37009,38059,40159,65359,20210,23360,28610,30710,32810,35960,38060,
65360,20211,21261,35961,37011,38061,65361,22312,25462,26512,27562,29662,30712,33862,35962,38062,
40162,65362,20213,21263,22313,24413,25463,34913,37013,38063,65363,20214,21264,22314,29664,34914,
38064,65364,20215,34915,37015,38065,65365,22316,25466,31766,34916,38066,65366,22317,24417,25467,
26517,28617,30717,32817,34917,37017,38067,65367,22318,24418,30718,38068,39118,65368,20219,21269,
22319,26519,29669,30719,32819,37019,38069,65369,21270,22320,24420,26520,30720,34920,35970,38070,
65370,20221,21271,27571,29671,30721,32821,34921,37021,38071,39121,65371,24422,25472,26522,27572,
30722,32822,38072,39122,65372,20223,21273,22323,27573,29673,32823,33873,34923,35973,38073,39123,
65373,21274,25474,26524,32824,34924,38074,65374,20225,24425,26525,27575,28625,31775,37025,38075,
39125,275,23376,24426,26526,28626,34926,37026,38076,21277,23377,29677,32827,35977,37027,38077,
24428,34928,35978,38078,39128,22329,23379,24429,25479,30729,32829,33879,38079,39129,21280,22330,
23380,25480,26530,34930,35980,37030,38080,39130,21281,22331,23381,25481,26531,32831,33881,38081,
24432,25482,29682,30732,31782,33882,38082,20233,21283,23383,24433,26533,27583,30733,31783,33883,
38083,9733,283,20234,22334,23384,25484,32834,33884,37034,38084,39134,9734,23385,24435,26535,
27585,32835,34935,38085,39135,21286,22336,23386,25486,26536,27586,31786,37036,38086,20237,23387,
25487,30737,20238,22338,23388,25488,26538,28638,30738,32838,35988,37038,38088,20239,23389,24439,
26539,27589,33889,37039,38089,20240,21290,25490,28640,30740,37040,38090,20241,23391,24441,26541,
28641,33891,34941,37041,38091,30742,32842,34942,35992,38092,22343,24443,26543,30743,32843,34943,
37043,38093,39143,21294,23394,24444,25494,26544,30744,32844,37044,38094,39144,23395,27595,32845,
34945,37045,22346,23396,25496,30746,34946,37046,38096,20247,23397,26547,27597,33897,38097,20248,
22348,23398,24448,30748,34948,37048,38098,20249,22349,24449,26549,27599,29699,30749,33899,34949,
37049,299,20250,22350,24450,26550,31800,32850,33900,37050,20251,22351,23401,26551,29701,30751,
33901,37051,38101,22352,23402,24452,26552,27602,29702,32852,34952,38102,22353,24453,27603,38103,
20254,23404,25504,27604,28654,37054,38104,20255,21305,24455,27605,28655,29705,30755,33905,34955,
38105,20256,21306,24456,25506,27606,29706,32856,21307,24457,25507,27607,30757,31807,33907,34957,
37057,38107,20258,23408,24458,30758,31808,32858,38108,22359,23409,24459,25509,27609,30759,31809,
33909,38109,20260,21310,24460,33910,37060,38110,20261,21311,23411,25511,26561,27611,29711,30761,
37061,38111,20262,22362,25512,29712,33912,34962,38112,8712,20263,21313,22363,23413,25513,26563,
37063,38113,22364,24464,25514,26564,30764,33914,38114,21315,22365,30765,38115,20266,22366,24466,
25516,34966,37066,38116,20267,21317,22367,25517,27617,38117,22368,23418,25518,30768,21319,22369,
24469,38119,8719,21320,25520,37070,38120,20271,21321,23421,24471,31821,37071,38121,8721,20272,
21322,22372,24472,29722,30772,33922,34972,37072,38122,24473,25523,29723,32873,37073,38123,20274,
22374,23424,25524,32874,38124,23425,26575,30775,37075,38125,20276,21326,22376,24476,26576,27626,
30776,38126,21327,22377,23427,25527,26577,27627,30777,33927,38127,20278,22378,23428,25528,26578,
30778,33928,34978,38128,21329,22379,23429,26579,30779,33929,37079,38129,20280,21330,25530,26580,
29730,30780,34980,38130,8730,21331,22381,23431,24481,27631,32881,33931,38131,39181,20282,23432,
25532,30782,33932,38132,21333,22383,23433,29733,37083,38133,8733,333,20284,21334,25534,26584,
29734,30784,33934,37084,38134,39184,8734,20285,21335,23435,26585,27635,37085,38135,23436,26586,
29736,38136,8736,22387,27637,34987,38137,21338,24488,26588,29738,38138,23439,26589,28689,30789,
34989,37089,21340,22390,24490,25540,26590,29740,37090,38140,20291,22391,27641,30791,38141,8741,
21342,25542,26592,29742,38142,9792,21343,23443,24493,33943,34993,38143,8743,20294,21344,24494,
26594,29744,37094,38144,8744,9794,21345,22395,23445,25545,27645,32895,33945,37095,38145,8745,
21346,22396,30796,32896,37096,38146,8746,21347,23447,26597,29747,38147,8747,21348,23448,28698,
29748,30798,33948,38148,23449,25549,28699,29749,32899,34999,37099,38149,21350,23450,25550,29750,
30800,32900,38150,8750,20301,21351,23451,24501,25551,26601,37101,38151,20302,22402,23452,25552,
30802,32902,38152,20303,21353,22403,23453,24503,27653,32903,33953,37103,38153,20304,22404,23454,
25554,26604,27654,35004,38154,20305,21355,22405,27655,30805,32905,38155,22406,23456,29756,30806,
38156,8756,20307,23457,26607,28707,30807,32907,38157,8757,21358,23458,24508,25558,26608,32908,
37108,38158,8758,20309,21359,23459,24509,26609,31859,35009,38159,8759,21360,23460,31860,35010,
38160,20311,21361,22411,23461,26611,27661,29761,38161,20312,22412,23462,26612,37112,38162,20313,
21363,27663,30813,35013,38163,363,20314,21364,27664,35014,38164,39214,20315,21365,24515,27665,
32915,38165,8765,20316,23466,24516,25566,38166,20317,21367,23467,24517,27667,31867,33967,35017,
37117,38167,20318,21368,22418,24518,25568,27668,31868,32918,37118,38168,20319,22419,25569,27669,
31869,38169,20320,21370,27670,32920,33970,38170,24521,25571,26621,38171,23472,27672,32922,33972,
35022,37122,20323,26623,27673,32923,38173,20324,24524,26624,27674,32924,37124,38174,20325,21375,
23475,24525,27675,28725,32925,38175,23476,30826,33976,35026,8776,20327,22427,23477,24527,25577,
30827,32927,33977,38177,21378,23478,24528,25578,30828,32928,33978,35028,38178,20329,24529,26629,
27679,28729,30829,32929,35029,38179,21380,23480,24530,30830,32930,38180,8780,21381,23481,25581,
26631,27681,29781,31881,33981,38181,20332,21382,22432,26632,27682,32932,35032,38182,22433,26633,
29783,32933,33983,35033,22434,24534,26634,27684,38184,20335,21385,22435,23485,24535,26635,29785,
33985,38185,20336,22436,23486,24536,25586,26636,27686,29786,38186,21387,23487,24537,27687,29787,
32937,38187,21388,22438,25588,26638,27688,29788,32938,33988,38188,20339,21389,22439,26639,27689,
30839,31889,32939,35039,38189,20340,23490,25590,27690,29790,31890,38190,22441,24541,26641,29791,
32941,38191,20342,23492,25592,32942,35042,38192,22443,23493,26643,31893,32943,33993,35043,38193,
23494,24544,27694,30844,33994,35044,38194,22445,23495,24545,27695,31895,32945,35045,37145,22446,
26646,27696,31896,32946,38196,20347,21397,25597,26647,33997,38197,20348,24548,27698,28748,32948,
35048,38198,25599,38199,20350,21400,22450,23500,25600,27700,31900,34000,37150,38200,8800,20351,
24551,25601,27701,28751,31901,32951,34001,38201,8801,21402,22452,25602,31902,38202,39252,26653,
31903,34003,38203,39253,23504,24554,27704,32954,37154,38204,8804,65504,20355,21405,24555,25605,
29805,30855,37155,8805,65505,20356,22456,23506,31906,32956,34006,35056,38206,21407,23507,24557,
26657,30857,32957,35057,38207,65507,24558,29808,31908,32958,38208,27709,31909,32959,35059,38209,
65509,20360,21410,30860,32960,35060,38210,20361,21411,24561,25611,30861,32961,25612,27712,30862,
32962,38212,20363,21413,27713,32963,34013,38213,21414,27714,29814,31914,32964,35064,38214,8814,
20365,24565,25615,26665,29815,30865,34015,35065,38215,8815,21416,22466,25616,26666,28766,32966,
34016,20367,21417,22467,23517,30867,37167,38217,39267,23518,24568,27718,31918,35068,38218,20369,
23519,25619,27719,34019,37169,39269,25620,35070,38220,23521,24571,27721,30871,31921,34021,38221,
39271,20372,21422,27722,29822,30872,31922,32972,34022,38222,39272,24573,31923,32973,38223,39273,
23524,24574,26674,29824,30874,32974,35074,38224,39274,20375,22475,23525,24575,26675,29825,30875,
36125,38225,39275,24576,30876,36126,38226,39276,24577,25627,29827,36127,37177,38227,39277,22478,
23528,24578,25628,27728,34028,38228,39278,20379,22479,24579,26679,28779,30879,31929,36129,39279,
21430,24580,25630,26680,28780,36130,38230,39280,20381,24581,26681,28781,29831,30881,36131,38231,
39281,22482,24582,25632,27732,31932,32982,34032,35082,36132,38232,39282,25633,27733,28783,30883,
31933,32983,36133,38233,20384,22484,23534,26684,28784,31934,36134,39284,21435,22485,26685,27735,
29835,30885,32985,36135,38235,39285,23536,24586,26686,32986,36136,38236,39286,20387,30887,31937,
32987,36137,37187,38237,39287,22488,25638,26688,29838,32988,35088,36138,38238,20389,21439,22489,
24589,26689,27739,28789,32989,36139,38239,20390,22490,24590,26690,27740,28790,29840,32990,35090,
36140,37190,39290,20391,21441,24591,26691,27741,31941,35091,36141,38241,20392,21442,25642,26692,
27742,28792,36142,38242,39292,20393,22493,26693,27743,31943,32993,36143,37193,38243,39293,20394,
23544,24594,25644,26694,27744,31944,34044,36144,37194,38244,22495,23545,25645,27745,36145,37195,
38245,39295,20396,22496,23546,24596,26696,28796,30896,31946,32996,36146,37196,38246,39296,23547,
24597,26697,30897,32997,34047,35097,36147,37197,38247,39297,20398,21448,23548,24598,26698,27748,
28798,30898,31948,35098,36148,37198,38248,20399,21449,28799,30899,31949,32999,35099,36149,37199,
38249,21450,22500,26700,28800,30900,33000,36150,37200,38250,39300,21451,23551,24601,33001,36151,
38251,39301,21452,25652,26702,27752,29852,33002,36152,37202,38252,39302,21453,23553,24603,27753,
33003,36153,38253,39303,24604,26704,27754,29854,33004,36154,39304,20405,24605,26705,28805,30905,
33005,35105,36155,38255,23556,36156,38256,39306,21457,26707,31957,33007,36157,37207,38257,39307,
8857,23558,24608,25658,26708,31958,33008,36158,38258,22509,24609,26709,28809,31959,33009,35109,
36159,38259,39309,21460,27760,28810,30910,33010,34060,36160,37210,22511,23561,25661,31961,33011,
36161,39311,21462,23562,27762,33012,36162,38262,39312,462,21463,24613,25663,29863,30913,36163,
37213,39313,21464,24614,27764,28814,29864,31964,33014,35114,36164,37214,39314,464,20415,21465,
24615,25665,29865,34065,35115,36165,39315,22516,24616,27766,33016,36166,39316,466,21467,23567,
24617,30917,31967,34067,36167,37217,39317,24618,25668,28818,31968,33018,36168,37218,39318,468,
20419,23569,24619,25669,27769,36169,37219,39319,8869,20420,22520,25670,26720,28820,33020,35120,
36170,37220,39320,470,20421,21471,22521,25671,26721,28821,30921,33021,34071,36171,37221,38271,
39321,21472,22522,23572,25672,26722,28822,30922,36172,472,23573,24623,26723,27773,30923,36173,
23574,25674,26724,27774,34074,35124,36174,474,21475,22525,26725,28825,36175,37225,20426,21476,
23576,26726,31976,33026,35126,36176,37226,476,21477,26727,27777,21478,22528,23578,26728,27778,
28828,30928,37228,24629,26729,27779,28829,34079,36179,20430,21480,22530,23580,33030,36180,37230,
20431,21481,23581,26731,27781,34081,36181,37231,20432,21482,25682,27782,29882,30932,36182,37232,
20433,21483,30933,31983,33033,37233,39333,21484,22534,25684,27784,33034,36184,37234,21485,22535,
24635,27785,36185,21486,23586,24636,36186,37236,39336,21487,30937,33037,35137,36187,37237,21488,
23588,25688,27788,33038,36188,37238,20439,21489,22539,23589,24639,33039,36189,37239,20440,21490,
26740,33040,35140,36190,37240,21491,22541,23591,24641,27791,33041,34091,37241,20442,24642,26742,
27792,31992,33042,34092,36192,21493,24643,26743,28843,33043,36193,20444,21494,25694,28844,33044,
36194,20445,21495,22545,27795,28845,31995,36195,37245,20446,21496,23596,27796,28846,33046,36196,
37246,20447,21497,28847,37247,33048,36198,20449,21499,22549,28849,36199,21500,33050,20451,21501,
23601,24651,27801,28851,30952,22553,24653,25703,26753,27803,34103,36203,37253,20454,23604,33054,
34104,21505,25705,26755,28855,34105,36205,37255,20456,24656,28856,29906,30956,34106,20457,21507,
26757,27807,28857,34107,37257,20458,21508,22558,23608,24658,26758,34108,36208,23609,25709,27809,
28859,34109,37259,21510,22560,23610,28860,32010,37260,20461,22561,23611,24661,27811,28861,36211,
37261,20462,21512,23612,27812,30962,36212,20463,21513,23613,27813,36213,21514,22564,23614,27814,
28864,30964,36214,37264,20465,23615,24665,27815,28865,34115,36215,37265,21516,23616,24666,28866,
29916,35166,37266,20467,21517,23617,26767,27817,28867,30967,35167,21518,23618,27818,29918,33068,
21519,24669,27819,21520,22570,25720,29920,30970,34120,21521,23621,25721,26771,27821,33071,34121,
20472,21522,25722,27822,28872,29922,34122,21523,29923,33073,20474,23624,24674,28874,29924,33074,
35174,37274,21525,23625,24675,26775,27825,36225,37275,21526,22576,23626,24676,27826,29926,21527,
23627,27827,30977,20478,33078,36228,24679,36229,23630,24680,25730,33080,21531,22581,23631,24681,
30981,23632,24682,25732,27832,32032,37282,21533,23633,24683,25733,27833,37283,21534,24684,29934,
32034,34134,36234,21535,24685,25735,27835,29935,36235,21536,26786,27836,33086,21537,23637,24687,
27837,34137,24688,27838,28888,21539,27839,28889,32039,26790,29940,37290,23641,24691,26791,28891,
36241,20492,21542,26792,29942,34142,20493,21543,29943,32043,37293,21544,24694,27844,33094,36244,
37294,20495,21545,25745,27845,28895,30995,35195,37295,22596,23646,24696,25746,33096,21547,24697,
26797,32047,20498,21548,23648,24698,33098,34148,21549,23649,24699,25749,26799,27849,33099,35199,
20500,21550,24700,25750,26800,27850,28900,33100,37300,21551,23651,24701,29951,35201,37301,27852,
28902,34152,21553,23653,24703,25753,26803,28903,35203,20504,21554,22604,23654,28904,33104,20505,
22605,26805,28905,33105,36255,20506,21556,27856,29956,31006,35206,37306,21557,24707,28907,33107,
20508,24708,25758,28908,33108,22609,27859,28909,33109,36259,21560,27860,20511,21561,27861,28911,
22612,23662,27862,31012,34162,20513,21563,23663,24713,27863,33113,21564,25764,33114,34164,23665,
29965,21566,22616,24716,26816,20517,24717,27867,29967,20518,21568,26818,25769,28919,29969,34169,
37319,20520,27870,33120,34170,20521,21571,28921,29971,34171,37321,20522,22622,24722,25772,27872,
37322,23673,25773,27873,36273,20524,21574,23674,24724,25774,27874,34174,37324,20525,26825,27875,
28925,33125,36275,37325,20526,21576,24726,25776,29976,36276,37326,38376,26827,27877,29977,33127,
36277,37327,38377,21578,29978,31028,38378,8978,21579,22629,23679,26829,33129,37329,38379,40479,
24730,27880,29980,34180,36280,40480,23681,24731,25781,34181,38381,40481,23682,27882,36282,38382,
40482,24733,25783,27883,29983,33133,34183,38383,40483,21584,25784,26834,31034,33134,36284,38384,
22635,24735,31035,38385,40485,21586,22636,24736,25786,27886,31036,33136,36286,38386,40486,21587,
26837,27887,28937,33137,36287,38387,20538,21588,23688,25788,27888,28938,31038,38388,40488,21589,
24739,27889,29989,38389,40489,20540,21590,26840,31040,33140,37340,38390,40490,21591,27891,31041,
34191,36291,38391,40491,20542,21592,23692,24742,25792,26842,29992,36292,38392,40492,21593,23693,
27893,29993,38393,40493,24744,25794,27894,28944,36294,38394,21595,27895,29995,33145,38395,40495,
21596,23696,27896,29996,31046,33146,38396,20547,23697,24747,25797,28947,29997,33147,38397,40497,
24748,26848,27898,31048,33148,38398,40498,24749,27899,28949,29999,31049,33149,36299,40499,23700,
27900,28950,30000,33150,36300,38400,20551,24751,26851,27901,30001,33151,38401,40501,20552,21602,
23702,27902,28952,30002,33152,36302,38402,40502,23703,24753,28953,30003,34203,36303,38403,40503,
21604,22654,23704,24754,28954,33154,34204,38404,40504,23705,25805,27905,30005,36305,38405,40505,
20556,21606,22656,23706,24756,25806,38406,40506,22657,23707,30007,20558,21608,23708,25808,27908,
30008,38408,20559,22659,31059,38409,40509,24760,25810,30010,32110,33160,36310,38410,40510,22661,
27911,30011,36311,38411,40511,26862,31062,33162,34212,38412,24763,31063,38413,40513,23714,24764,
26864,30014,36314,38414,40514,20565,22665,23715,25815,26865,27915,35265,36315,38415,40515,25816,
27916,28966,30016,31066,34216,35266,38416,40516,21617,31067,33167,36317,38417,40517,21618,27918,
31068,34218,35268,36318,38418,40518,21619,26869,31069,32119,33169,35269,36319,40519,20570,31070,
35270,38420,40520,21621,23721,30021,31071,35271,38421,40521,20572,21622,25822,27922,31072,34222,
35272,38422,40522,21623,23723,24773,26873,34223,35273,36323,38423,40523,21624,22674,23724,24774,
26874,30024,31074,34224,35274,36324,40524,22675,23725,28975,35275,38425,25826,26876,28976,33176,
35276,38426,40526,21627,27927,28977,30027,31077,40527,21628,24778,25828,30028,35278,36328,38428,
21629,23729,24779,27929,31079,33179,35279,38429,40529,25830,27930,30030,31080,33180,35280,36330,
20581,22681,23731,26881,27931,30031,33181,34231,35281,36331,38431,21632,22682,28982,35282,36332,
23733,34233,38433,40533,21634,27934,38434,23735,24785,26885,31085,36335,40535,21636,22686,23736,
30036,35286,40536,22687,31087,33187,20588,21638,40538,24789,36339,40539,33190,35290,40540,23741,
26891,27941,30041,34241,36341,24792,30042,33192,35292,38442,40542,21643,23743,26893,27943,30043,
36343,21644,24794,26894,30044,33194,35294,36344,23745,31095,36345,21646,22696,24796,26896,27946,
31096,36346,38446,21647,22697,24797,27947,28997,36347,40547,20598,21648,23748,26898,31098,40548,
20599,24799,34249,35299,36349,38449,21650,24800,27950,38450,40550,35301,38451,40551,21652,29002,
35302,38452,40552,20603,21653,27953,30053,33203,38453,40553,21654,27954,29004,30054,31104,38454,
40554,23755,27955,31105,34255,40555,20606,24806,25856,29006,34256,40556,20607,21657,24807,27957,
35307,36357,40557,20608,21658,24808,30058,31108,21659,24809,31109,34259,38459,33210,38460,40560,
21661,24811,26911,27961,33211,34261,35311,36361,38461,40561,23762,24812,26912,36362,20613,24813,
27963,38463,40563,24814,27964,31114,36364,38464,24815,25865,27965,35315,20616,22716,24816,26916,
27966,30066,32166,33216,38466,21667,33217,36367,21668,30068,33218,34268,38468,23769,24819,27969,
31119,33219,38469,21670,24820,29020,38470,20621,21671,22721,27971,38471,21672,24822,29022,30072,
33222,36372,38472,21673,27973,30073,38473,21674,25874,27974,32174,40574,21675,22725,24825,26925,
27975,38475,40575,21676,24826,27976,33226,34276,38476,21677,23777,38477,26928,27978,29028,33228,
35328,40578,21679,27979,30079,23780,25880,29030,31130,38480,21681,23781,27981,29031,34281,36381,
23782,24832,26932,27982,29032,36382,39532,21683,24833,27983,30083,36383,39533,40583,21684,23784,
38484,39534,40584,27985,35335,38485,39535,23786,27986,30086,36386,39536,22737,26937,27987,36387,
39537,40587,21688,24838,27988,29038,23789,39539,24840,39540,21691,22741,24841,26941,30091,38491,
39541,23792,29042,39542,20643,21693,25893,26943,27993,29043,31143,36393,39543,27994,36394,39544,
40594,20645,21695,24845,30095,38495,39545,40595,21696,24846,26946,27996,36396,39546,20647,21697,
24847,30097,38497,39547,20648,21698,27998,29048,30098,36398,38498,39548,20649,25899,34299,36399,
39549,21700,28000,29050,30100,38500,39550,33251,36401,39551,20652,21702,25902,30102,39552,21703,
23803,24853,25903,28003,29053,30103,34303,38503,39553,21704,38504,39554,21705,30105,31155,33255,
36405,38505,40605,22756,28006,30106,38506,39556,39557,40607,20658,21708,24858,25908,33258,38508,
39558,21709,25909,28009,30109,34309,36409,39559,21710,23810,25910,28010,29060,33260,36410,39560,
21711,23811,30111,31161,33261,711,21712,25912,30112,31162,39562,21713,22763,24863,25913,30113,
31163,36413,39563,713,21714,22764,23814,24864,26964,28014,38514,39564,40614,21715,23815,25915,
28015,30115,31165,20666,21716,22766,29066,30116,31166,36416,38516,20667,21717,24867,26967,30117,
33267,36417,38517,39567,22768,24868,25918,31168,33268,36418,38518,39568,21719,25919,31169,38519,
39569,24870,26970,28020,36420,39570,21721,22771,24871,29071,31171,34321,39571,21722,23822,26973,
28023,30123,36423,21724,22774,26974,28024,30124,31174,36424,39574,21725,24875,25925,33275,36425,
39575,21726,26976,29076,30126,33276,34326,36426,39576,21727,22777,30127,31177,36427,23828,25928,
28028,30128,33278,39578,40628,25929,26979,30129,31179,39579,23830,29080,30130,33280,39580,29081,
30131,31181,33281,39581,25932,26982,30132,33282,39582,40632,21733,30133,36433,38533,39583,21734,
28034,33284,36434,38534,39584,21735,23835,25935,31185,33285,39585,40635,21736,22786,30136,31186,
33286,38536,39586,20687,21737,25937,26987,28037,29087,30137,39587,40637,21738,22788,23838,29088,
39588,40638,12288,31189,38539,39589,12289,26990,28040,30140,35390,12290,21741,22791,25941,28041,
30141,36441,38541,39591,12291,21742,25942,30142,31192,33292,37492,39592,26993,33293,34343,38543,
12293,20694,23844,28044,38544,40644,24895,25945,34345,63745,21746,23846,28046,29096,30146,33296,
12296,21747,22797,23847,25947,30147,12297,20698,30148,33298,38548,12298,63748,22799,23849,25949,
26999,28049,30149,31199,40649,12299,63749,25950,27000,29100,33300,35400,39600,12300,63750,27001,
28051,30151,38551,39601,12301,28052,30152,38552,12302,23853,28053,30153,31203,38553,40653,12303,
63753,21754,22804,23854,24904,25954,27004,30154,31204,36454,40654,12304,63754,22805,25955,40655,
12305,63755,21756,22806,24906,31206,38556,39606,63756,21757,29107,30157,31207,33307,36457,39607,
40657,12307,24908,25958,27008,33308,39608,12308,21759,22809,28059,29109,31209,12309,20710,22810,
23860,24910,27010,33310,34360,36460,39610,40660,12310,20711,21761,28061,31211,33311,36461,12311,
63761,22812,27012,28062,30162,39612,63762,24913,25963,28063,29113,31213,33313,36463,25964,27014,
28064,30164,33314,34364,36464,40664,22815,27015,28065,30165,31215,33315,63765,20716,21766,27016,
30166,31216,36466,39616,63766,20717,21767,24917,27017,28067,38567,39617,40667,63767,20718,25968,
28068,30168,36468,37518,39618,40668,63768,21769,23869,40669,63769,22820,23870,25970,28070,33320,
36470,22821,27021,28071,30171,39621,40671,25972,28072,33322,40672,63772,20723,22823,28073,29123,
33323,28074,30174,31224,33324,40674,20725,21775,22825,24925,25975,28075,33325,21776,22826,36476,
38576,21777,22827,31227,33327,39627,40677,27028,28078,30178,33328,39628,22829,23879,27029,28079,
30179,31229,33329,36479,38579,40679,21780,22830,24930,30180,20731,22831,33331,34381,36481,40681,
63781,23882,27032,28082,30182,31232,33332,34382,38582,40682,22833,23883,30183,33333,34383,39633,
23884,29134,30184,31234,33334,34384,63784,24935,27035,28085,31235,33335,34385,36485,38585,39635,
63785,22836,24936,27036,30186,33336,63786,21787,30187,33337,36487,40687,63787,28088,31238,34388,
38588,22839,33339,38589,22840,29140,38590,39640,63790,22841,25991,29141,20742,21792,22842,30192,
33342,38592,20743,30193,31243,38593,21794,22844,24944,34394,21795,25995,28095,31245,36495,21796,
23896,25996,28096,30196,31246,36496,38596,63796,20747,27047,38597,39647,40697,27048,33348,34398,
38598,21799,22849,23899,24949,35449,38599,39649,40699,63799,22850,26000,28100,36500,37550,40700,
63800,23901,24951,26001,27051,28101,30201,33351,38601,21802,22852,28102,29152,31252,34402,40702,
26003,27053,28103,33353,12353,63803,20754,21804,30204,38604,39654,12354,22855,31255,33355,38605,
12355,21806,22856,38606,12356,21807,22857,26007,27057,28107,29157,30207,38607,12357,21808,28108,
30208,31258,36508,12358,63808,21809,22859,26009,29159,30209,33359,39659,12359,27060,36510,38610,
12360,21811,26011,30211,34411,39661,12361,63811,22862,26012,31262,34412,12362,22863,23913,27063,
28113,30213,38613,39663,12363,31264,34414,12364,63814,21815,22865,23915,26015,32315,35465,40715,
12365,63815,23916,29166,35466,12366,26017,27067,31267,34417,40717,12367,63817,22868,28118,30218,
33368,40718,12368,20769,22869,23919,12369,21820,22870,26020,28120,30220,33370,40720,12370,22871,
24971,26021,28121,32321,12371,21822,22872,12372,63822,21823,26023,27073,36523,39673,40723,12373,
63823,22874,23924,24974,30224,36524,38624,12374,21825,26025,28125,33375,34425,35475,39675,12375,
63825,28126,34426,37576,12376,63826,21827,26027,29177,32327,34427,36527,40727,12377,63827,21828,
28128,34428,12378,26029,28129,30229,34429,40729,12379,63829,21830,22880,24980,34430,36530,12380,
26031,30231,34431,12381,22882,26032,27082,28132,30232,34432,38632,12382,63832,21833,30233,31283,
34433,38633,39683,12383,63833,21834,27084,28134,33384,34434,38634,12384,22885,30235,12385,27086,
40736,12386,31287,12387,23938,27088,36538,39688,40738,12388,63838,24989,28139,30239,31289,38639,
12389,21840,28140,29190,30240,33390,12390,63840,26041,31291,33391,12391,63841,27092,28142,30242,
31292,33392,34442,12392,31293,34443,38643,12393,63843,26044,30244,33394,34444,12394,21845,26045,
28145,30245,31295,33395,34445,39695,12395,63845,21846,30246,33396,38646,12396,28147,38647,12397,
63847,40748,12398,63848,20799,22899,24999,26049,27099,30249,38649,39699,12399,20800,22900,25000,
30250,12400,63850,20801,25001,26051,28151,30251,33401,34451,40751,12401,21852,22902,26052,31302,
33402,12402,63852,20803,26053,27103,28153,30253,34453,12403,63853,20804,22904,25004,26054,27104,
38654,12404,20805,22905,28155,33405,12405,20806,28156,30256,33406,38656,12406,21857,33407,38657,
12407,63857,20808,36558,12408,63858,20809,22909,26059,30259,40759,12409,63859,21860,26060,30260,
33410,34460,38660,12410,63860,20811,21861,23961,30261,34461,39711,40761,12411,63861,21862,26062,
33412,38662,12412,63862,20813,21863,22913,26063,29213,31313,38663,40763,8213,12413,63863,22914,
30264,38664,8214,12414,22915,23965,25015,28165,38665,39715,40765,12415,63865,21866,22916,26066,
33416,40766,8216,12416,63866,20817,27117,34467,8217,12417,21868,22918,30268,33418,34468,12418,
63868,21869,22919,31319,33419,38669,12419,20820,21870,22920,26070,28170,30270,38670,8220,12420,
63870,20821,26071,30271,33421,34471,38671,8221,12421,20822,22922,25022,27122,28172,30272,33422,
34472,40772,12422,28173,33423,34473,12423,63873,28174,29224,34474,12424,22925,30275,33425,38675,
12425,63875,20826,25026,28176,29226,33426,34476,12426,21877,28177,39727,12427,20828,21878,29228,
38678,12428,21879,34479,12429,21880,22930,26080,28180,34480,39730,8230,12430,22931,33431,34481,
12431,63881,25032,26082,28182,29232,33432,12432,63882,21883,27133,28183,29233,33433,12433,20834,
21884,22934,25034,30284,34484,38684,40784,12434,22935,25035,26085,27135,30285,34485,40785,12435,
21886,26086,28186,32386,33436,34486,38686,63886,20837,22937,26087,29237,33437,21888,26088,29238,
21889,26089,28189,29239,33439,39739,20840,21890,29240,34490,39740,8240,21891,23991,25041,29241,
33441,21892,22942,25042,26092,28192,30292,8242,20843,26093,28193,29243,8243,20844,25044,26094,
30294,31344,33444,20845,21895,26095,28195,29245,33445,39745,20846,21896,26096,27146,28196,33446,
34496,39746,21897,22947,26097,28197,29247,39747,20848,21898,22948,31348,33448,38698,39748,20849,
21899,22949,33449,39749,12449,30300,31350,33450,34500,12450,63900,20851,28201,31351,33451,38701,
39751,8251,12451,63901,20852,22952,26102,30302,31352,33452,34502,39752,12452,63902,20853,21903,
22953,26103,28203,31353,33453,34503,39753,12453,63903,20854,22954,31354,33454,38704,12454,63904,
20855,21905,22955,24005,28205,29255,33455,34505,12455,20856,26106,29256,33456,34506,38706,12456,
63906,20857,28207,30307,33457,34507,39757,12457,63907,21908,22958,12458,63908,20859,22959,27159,
31359,33459,39759,12459,20860,27160,28210,29260,31360,33460,34510,12460,20861,29261,31361,32411,
34511,39761,12461,21912,22962,25062,26112,28212,34512,38712,9312,12462,63912,21913,24013,31363,
33463,34513,38713,9313,12463,913,63913,20864,26114,31364,33464,39764,9314,12464,914,20865,
26115,30315,32415,33465,9315,12465,915,20866,21916,28216,29266,31366,32416,34516,9316,12466,
916,63916,21917,27167,32417,9317,12467,917,63917,26118,28218,31368,32418,38718,9318,12468,
918,20869,21919,22969,27169,30319,32419,33469,9319,12469,919,63919,29270,32420,33470,34520,
9320,12470,920,63920,22971,32421,34521,9321,12471,921,20872,26122,32422,12472,922,63922,
20873,29273,31373,32423,33473,34523,12473,923,22974,26124,32424,12474,924,29275,32425,12475,
925,63925,20876,26126,27176,32426,33476,34526,12476,926,20877,21927,24027,25077,26127,28227,
29277,31377,32427,34527,12477,927,63927,27178,28228,30328,31378,32428,12478,928,24029,29279,
32429,33479,12479,929,24030,33480,12480,63930,26131,29281,30331,31381,32431,40831,12481,931,
63931,20882,22982,26132,29282,31382,32432,33482,34532,40832,9332,12482,932,63932,24033,26133,
27183,30333,31383,32433,33483,9333,12483,933,63933,24034,30334,31384,32434,33484,9334,12484,
934,63934,20885,27185,32435,33485,40835,9335,12485,935,20886,22986,29286,33486,40836,9336,
12486,936,63936,20887,21937,22987,24037,25087,26137,28237,29287,32437,33487,34537,40837,9337,
12487,937,24038,28238,30338,31388,32438,38738,40838,9338,12488,63938,20889,21939,24039,27189,
29289,31389,32439,33489,38739,40839,9339,12489,24040,30340,32440,33490,40840,9340,12490,20891,
21941,24041,26141,31391,32441,33491,34541,35591,40841,9341,12491,20892,22992,30342,31392,32442,
33492,34542,38742,40842,9342,12492,63942,21943,22993,24043,26143,28243,30343,33493,40843,9343,
12493,22994,25094,26144,28244,29294,30344,34544,37694,40844,9344,12494,21945,22995,29295,32445,
33495,34545,38745,9345,12495,945,63945,20896,22996,24046,25096,28246,32446,33496,34546,9346,
12496,946,63946,21947,24047,27197,30347,31397,32447,34547,38747,9347,12497,947,63947,20898,
25098,27198,28248,29298,31398,32448,34548,9348,12498,948,63948,21949,22999,24049,25099,26149,
32449,33499,9349,12499,949,63949,20900,21950,23000,24050,25100,30350,31400,32450,33500,38750,
9350,12500,950,63950,20901,24051,25101,26151,28251,29301,32451,9351,12501,951,23002,24052,
25102,26152,32452,33502,34552,38752,9352,12502,952,25103,30353,32453,33503,34553,38753,9353,
12503,953,63953,23004,25104,27204,31404,32454,33504,38754,9354,12504,954,63954,23005,24055,
25105,28255,29305,30355,31405,32455,33505,9355,12505,955,21956,25106,29306,32456,9356,12506,
956,20907,21957,26157,27207,32457,33507,38757,40857,9357,12507,957,20908,30358,32458,33508,
34558,40858,9358,12508,958,25109,26159,32459,33509,40859,9359,12509,959,25110,29310,32460,
33510,34560,9360,12510,960,63960,20911,21961,23011,24061,25111,26161,29311,30361,31411,32461,
38761,9361,12511,961,20912,24062,25112,29312,32462,34562,9362,12512,63962,20913,23013,29313,
32463,34563,40863,9363,12513,963,63963,20914,21964,25114,26164,32464,40864,9364,12514,964,
63964,20915,21965,24065,25115,26165,32465,33515,9365,12515,965,63965,23016,24066,26166,27216,
29316,32466,9366,12516,966,63966,20917,24067,28267,32467,34567,9367,12517,967,63967,20918,
32468,34568,9368,12518,968,63968,20919,21969,24069,25119,32469,33519,34569,9369,12519,969,
63969,21970,23020,24070,28270,34570,9370,12520,63970,21971,25121,32471,33521,38771,9371,12521,
63971,21972,24072,25122,26172,29322,30372,32472,35622,38772,12522,63972,20923,29323,31423,32473,
34573,12523,63973,20924,21974,25124,26174,27224,32474,33524,38774,12524,63974,20925,25125,27225,
29325,32475,12525,24076,32476,12526,26177,27227,29327,32477,33527,12527,63977,20928,32478,34578,
12528,24079,26179,32479,33529,34579,12529,63979,21980,24080,25130,29330,32480,38780,12530,63980,
21981,24081,32481,33531,34581,12531,63981,20932,25132,30382,32482,12532,21983,23033,27233,32483,
34583,12533,20934,24084,25134,34584,12534,20935,21985,23035,24085,30385,31435,32485,24086,28286,
30386,32486,34586,20937,21987,26187,27237,28287,32487,33537,63987,21988,24088,26188,30388,32488,
33538,34588,37738,63988,20939,21989,23039,24089,25139,32489,33539,38789,12539,63989,20940,21990,
24090,25140,32490,33540,34590,23041,24091,26191,28291,32491,33541,63991,21992,24092,33542,63992,
20943,23043,24093,25143,28293,29343,32493,33543,34593,63993,21994,23044,26194,28294,32494,33544,
34594,20945,21995,23045,26195,32495,33545,34595,38795,63995,21996,23046,26196,31446,32496,23047,
26197,28297,32497,34597,38797,63997,23048,26198,32498,33548,63998,21999,23049,25149,26199,27249,
30399,31449,32499,12549,63999,25150,32500,33550,12550,64000,25151,32501,33551,34601,38801,12551,
64001,22002,23052,24102,25152,26202,30402,32502,38802,12552,64002,22003,24103,25153,28303,32503,
33553,12553,64003,28304,31454,32504,38804,12554,64004,20955,22005,25155,30405,31455,12555,64005,
29356,30406,31456,32506,33556,34606,12556,64006,20957,22007,23057,26207,27257,29357,32507,33557,
12557,30408,32508,38808,12558,64008,23059,24109,25159,26209,29359,31459,32509,33559,34609,12559,
64009,20960,24110,25160,27260,29360,30410,32510,36710,12560,20961,25161,31461,32511,36711,12561,
64011,26212,28312,31462,32512,33562,34612,36712,12562,64012,22013,24113,25163,30413,32513,33563,
36713,12563,20964,22014,23064,25164,26214,27264,29364,30414,32514,33564,12564,25165,30415,32515,
34615,36715,12565,22016,25166,26216,28316,29366,30416,32516,36716,38816,12566,22017,29367,30417,
32517,36717,12567,23068,27268,29368,30418,32518,36718,12568,64018,24119,25169,28319,29369,31469,
32519,34619,36719,38819,12569,24120,25170,30420,32520,36720,12570,20971,23071,25171,31471,32521,
36721,12571,23072,25172,26222,28322,30422,34622,36722,12572,64022,20973,24123,26223,30423,32523,
34623,36723,12573,64023,22024,24124,26224,30424,32524,36724,12574,64024,20975,22025,23075,24125,
28325,32525,33575,36725,37775,1025,12575,64025,20976,25176,32526,33576,36726,12576,64026,23077,
28327,29377,30427,32527,36727,38827,12577,64027,22028,26228,27278,29378,36728,12578,64028,20979,
25179,29379,32529,33579,36729,38829,12579,64029,22030,24130,26230,27280,28330,29380,32530,33580,
36730,12580,64030,20981,22031,23081,26231,27281,30431,31481,32531,33581,34631,36731,38831,12581,
20982,24132,31482,32532,34632,36732,12582,24133,32533,33583,34633,36733,12583,20984,26234,29384,
32534,36734,38834,12584,20985,28335,31485,32535,33585,36735,12585,20986,32536,34636,35686,38836,
20987,25187,27287,28337,30437,31487,32537,33587,36737,64037,20988,26238,28338,32538,33588,34638,
36738,64038,20989,23089,29389,32539,33589,36739,22040,23090,24140,25190,28340,29390,32540,33590,
36740,1040,20991,25191,31491,32541,36741,1041,20992,23092,26242,28342,29392,31492,33592,35692,
36742,1042,20993,22043,25193,28343,32543,33593,34643,36743,1043,20994,23094,25194,26244,29394,
31494,32544,33594,36744,1044,20995,25195,32545,36745,1045,22046,25196,27296,28346,30446,31496,
32546,33596,36746,1046,22047,25197,26247,28347,30447,32547,34647,36747,1047,20998,24148,25198,
31498,32548,1048,64048,20999,24149,25199,28349,29399,30449,31499,32549,34649,36749,1049,64049};
static const unsigned gb2312_revtable_octets[]={
55511,59069,51397,50084,59343,56567,60066,42924,50146,57556,48849,59344,60067,42925,50147,49071,
57555,60114,54961,54183,47096,42926,51162,45282,46076,62411,52213,56565,48301,42927,45488,59065,
58600,59345,42928,47816,56251,57559,57764,59869,53414,59346,51940,42929,55512,47094,50428,53216,
59347,48803,62192,57550,42930,50935,51950,59871,60911,59348,56564,54447,42931,57765,50122,47837,
45514,51657,53181,42932,50347,53452,50682,46561,48582,62408,59349,45789,62198,54711,42933,48046,
57564,50885,50638,59350,62200,60068,42934,58872,57560,57766,59351,62202,54750,42935,48090,46257,
46835,50607,46812,59352,60069,42936,49070,52721,45237,55244,62415,59353,53441,42937,54519,60350,
59067,54738,48585,47548,42938,49616,55030,46032,51873,46545,59354,56563,42939,50164,49653,46000,
48316,57845,62398,48374,46279,42940,48328,54514,58598,57847,56552,45529,42941,51950,53947,47317,
55276,60909,62423,47319,48068,42942,50103,46753,46260,60116,48044,42943,47779,52155,45997,46784,
62418,51377,49395,62195,42944,58558,50911,46069,55250,53185,60912,49329,42945,52431,51880,60913,
62193,42961,43428,55027,57562,60408,57846,50108,42962,43429,51646,54776,62420,42963,43430,55233,
52722,52987,59068,48881,58596,54268,49076,62419,42964,43431,45486,54729,45265,57848,47099,48340,
47867,45542,42965,43432,51687,51453,57852,60910,56553,45543,42966,43433,60653,51663,50640,47305,
47606,57849,45503,62399,56554,46587,42968,43434,50925,53186,47833,50877,60115,45544,42969,43435,
55458,48105,50410,62687,62414,62400,56561,42970,43436,55270,45755,57850,62410,62401,56566,42971,
43437,55203,54251,50649,45730,54989,49386,46554,56569,42972,43438,49403,53974,58585,46516,62191,
42973,43439,55460,53458,51939,58588,57854,62416,62199,46013,63179,42974,43440,46067,45552,55205,
49914,58017,51417,62189,51432,42975,43441,52667,59355,50362,58590,49351,48103,62190,52900,42976,
43442,55208,55513,48067,52662,62417,56574,51405,42977,43443,51154,47566,59070,54231,46774,49867,
56573,42978,43444,55463,54212,49081,49348,60916,62421,54187,47787,42979,43445,47025,51904,46525,
54747,49872,60914,56737,62187,58817,59576,42980,43446,51952,47587,57851,56739,62374,59577,42981,
43447,54751,51184,57569,58063,47271,45481,45557,47582,56741,59578,42982,43448,46068,45563,55514,
57565,59066,50647,52402,57853,52728,54001,62371,45535,48834,42983,43449,56499,53941,53933,62413,
56740,55973,42984,43450,56499,46292,54758,56742,48326,42985,43451,55032,46763,54982,49335,55215,
50143,48355,55528,56743,62370,46761,63465,42986,43452,47830,52159,52130,57042,58847,47793,53929,
47292,49609,42987,43453,55465,51375,51180,49113,60915,49661,51407,46319,42988,43454,51634,45523,
49877,49886,62196,48293,54004,42989,43455,46284,57570,51136,58021,62422,61111,55974,42990,43456,
49100,51418,55975,51112,54479,41446,42991,43457,46762,46258,48036,60117,60918,47011,52438,54232,
51672,42992,43458,58817,47604,57563,58065,45480,51395,42993,43459,53981,49597,57561,46542,49620,
54691,55976,50937,43460,53711,55515,57567,53667,47817,50941,53688,42967,43461,55516,54180,50666,
56745,43462,51621,46823,59071,53490,62426,61113,62203,53685,47613,43463,55469,48321,57568,51700,
49838,53993,49909,43464,52458,59075,58064,50683,58607,58019,60917,62412,61112,56758,53686,43465,
47350,52391,45269,56753,48327,43466,53694,49122,58024,50128,46536,56756,62373,43467,58332,59076,
54182,45822,48562,43468,54992,46551,58018,48622,48100,43469,57566,58066,62428,55977,54189,43470,
46570,45479,55978,43471,47073,53239,57572,61115,53704,54475,43472,53494,50157,50125,60919,47012,
54742,55979,48636,43473,46254,55517,47357,50863,45762,49140,49136,55279,53485,43474,51120,46550,
58023,48876,55038,56752,50168,46831,58818,43475,49625,50935,47278,58022,60920,52658,50894,49883,
47029,41453,43476,55468,58819,43477,55484,47568,54507,50643,50913,52471,46320,54979,52175,43478,
48547,57574,47055,50344,58020,49394,47085,43479,52712,51913,58068,58025,53723,45791,51688,48057,
43480,46500,57043,58613,61117,47043,54754,43481,52906,52446,53690,62424,51952,48887,43482,55031,
46057,58027,54948,48632,43483,50890,55237,62425,61116,51631,62205,55980,54454,43484,49398,57573,
58067,50162,51951,54774,51640,55981,52901,43485,48857,46792,50880,49580,43486,55471,55289,60118,
49833,53449,60924,62429,62375,55271,46041,43487,47095,60119,55021,56556,62377,51894,43488,50904,
50088,61118,56750,62372,43489,55520,47297,55028,58028,62430,54697,52470,43490,50379,46499,49388,
60923,62204,52191,43491,55518,50109,45808,53725,53207,62433,54767,58822,43492,48835,52645,50356,
58606,55982,58820,43493,50409,61120,56759,55007,58824,43494,55473,55519,57575,49325,58030,62379,
46282,43495,50100,57576,57044,55984,58826,43496,53989,61119,56560,62378,55983,58823,43497,45288,
60120,47855,56751,46543,43498,54958,45310,58072,50628,53995,50888,43499,52954,50116,49632,60921,
56760,55985,43500,54695,48871,59074,58070,60121,59872,60922,55986,46588,43501,47861,51964,47573,
58029,56748,49885,55987,58821,43502,47014,51875,49077,58026,51924,43503,49366,48372,54201,48860,
50350,62431,55988,51958,57577,58069,52696,62382,51883,50873,57571,45262,53746,55989,50642,62435,
55990,58825,51143,52687,54459,58605,48043,62434,51132,62384,46031,47281,57046,54451,55023,47572,
58071,48848,51194,60925,50112,56761,55991,55230,53943,48806,62427,56755,48048,50132,46027,47342,
57045,47356,56749,46510,45509,53970,54736,58614,49130,50346,55992,48291,47807,45277,58612,62369,
55993,52455,60098,49918,46063,47598,55487,59073,47329,53679,48837,50402,45788,58589,52143,62432,
53992,55223,50930,61089,56744,62385,55994,53938,57578,58608,46781,49331,62380,47299,53168,49827,
49916,51113,49579,53226,52683,53223,49582,48368,51966,61090,56746,45807,52173,49352,54520,50368,
48370,49639,56747,55995,51914,55522,54197,52454,54724,58032,55996,52435,59079,49337,55278,60926,
56754,58828,48587,53169,50593,62662,48113,62383,48619,58827,51945,45734,58609,58031,53471,56757,
62206,52956,50406,55524,60404,54513,48606,62443,62663,54184,62381,54255,55523,59873,45767,56762,
55997,55488,58075,53211,52979,53665,59082,58074,49320,51127,56763,55998,53687,49322,51907,46286,
50087,54229,58829,57047,54466,48054,51386,48101,54780,54224,53440,58033,55999,58832,50684,49614,
60355,60579,53754,56786,52149,53241,47536,50675,47551,62664,56764,62386,52176,52664,49906,59077,
56000,55024,49874,51373,47102,50615,51179,58831,52137,62436,55022,46557,51433,48350,58076,56785,
56001,51625,57049,60372,62388,50613,52670,49085,46787,47549,46785,55525,58603,58034,45741,56002,
58833,58604,48126,62665,47052,46778,52151,62666,48853,49102,55526,60382,61093,52195,62376,56003,
50868,55482,62667,48890,56004,52648,57579,48309,55207,49354,58610,61091,52141,47588,51888,54267,
61094,56005,50371,52907,47818,46583,51909,51116,53203,62445,62387,56006,46033,41713,46038,52731,
62441,49602,52185,41714,58077,47570,50153,55802,55227,54508,41715,49574,45999,60580,46066,47358,
56007,58834,41716,58078,58035,56778,62389,52408,47082,41717,51376,51394,50906,60581,52385,47580,
41718,45292,59080,50907,62446,58865,56773,53994,63181,41719,47526,54968,58036,54256,50353,41720,
49611,48339,59081,60156,56767,56008,58830,41721,52977,45236,62688,46589,41722,54248,56253,48576,
59086,49134,50635,61095,62437,48081,41723,54777,49619,61092,62438,52940,56009,41724,59088,60412,
53177,62442,45771,53427,51906,49889,56771,56010,46846,56264,49126,50366,51121,62444,56011,55457,
60582,61096,62447,46049,56779,53431,52925,58837,54234,46767,59089,53715,52916,49850,49911,62440,
45732,56012,46334,54243,49143,55034,52642,52468,50345,48381,56789,56013,58838,50604,45502,60583,
56014,54470,48601,54525,53418,45815,63183,48037,56254,59083,48552,58602,61876,62392,56017,41448,
55489,56255,46549,51957,51128,53220,56766,56015,49843,52965,52698,58037,53998,53736,63184,48814,
59084,55020,56016,58835,41452,50386,57027,47336,49610,62448,62689,50133,58836,41383,49400,55461,
50896,55801,56018,63185,55464,48802,59087,49066,54975,50899,56784,53981,63186,49357,56269,49870,
46820,56019,63187,53703,53996,53502,62439,56020,63188,53417,50395,50938,52942,61097,56021,49887,
50602,52386,61098,53224,53435,45510,59078,53422,52406,49866,62690,53925,63190,50387,48122,46001,
57003,56788,62393,45305,54242,41443,55485,46514,54257,49634,56022,45483,41408,55791,57580,57028,
57048,51148,47046,51115,63191,52726,54773,53472,52725,50867,56023,46813,53939,49082,45527,48311,
58619,48631,52204,46757,63192,57581,59085,57262,48083,60584,51142,62450,50081,51178,63193,41889,
48571,56256,51633,58611,59360,56024,58839,61948,63194,41462,41890,47781,51910,55029,56025,53230,
41461,41891,53984,51188,45220,54483,46537,56782,50173,52147,63195,41447,45818,52164,51901,51368,
59361,46548,56783,62391,52407,54262,53483,63196,41893,47840,50610,58618,52146,55213,46308,56026,
59375,41894,50358,45738,57582,57265,46316,50858,62692,51428,56027,52711,41895,48088,47307,58621,
62390,49342,47563,41896,53229,55478,47533,56772,50903,46809,41897,48809,54002,59582,54969,58620,
48833,61099,56028,61949,63197,41898,52644,54210,57583,54013,54769,51644,54781,62691,56029,45545,
45284,63198,41899,49601,52677,46283,62451,62693,51124,52172,53194,41467,41900,50147,47269,45757,
52651,56765,62394,56030,46836,61950,41468,41901,46810,47851,60157,59579,52964,56031,58842,54436,
63199,41466,41902,53675,50919,49898,61100,62694,56781,47560,58840,63182,49837,63200,41469,41903,
51159,49390,52433,58841,49644,63201,41904,55793,46042,53459,62449,46528,50884,63202,41905,45764,
52705,46030,56777,48817,63203,41906,55796,46309,59364,49832,62395,62113,63204,41907,56258,62695,
46272,48341,49392,41464,41908,57585,46556,57050,59580,54704,53957,63205,41463,41909,49365,54725,
52646,46010,59363,47794,58844,62114,63206,41910,54448,58615,61101,45247,56770,62115,63207,41911,
51403,54728,50120,63208,41912,55529,59090,52716,63172,47325,62696,50876,48109,58846,62116,63209,
41913,56259,49319,58617,62453,52910,53955,41914,46289,50134,58616,56780,50869,63210,41915,49073,
53202,50668,41916,53978,48033,52710,62452,56776,52679,63211,41917,51890,52903,52966,46789,46777,
62117,63212,41918,51402,57584,58867,57052,50101,62712,41919,55532,58866,59581,58845,54193,63213,
41920,55530,52657,51960,46325,46299,47021,62713,51122,49093,63214,41921,55494,49318,47324,59362,
53997,52450,63215,41922,48630,50364,57586,58868,52469,52160,48055,53923,63216,41409,41923,50893,
47564,48351,53206,56769,61123,52707,62118,63217,41924,46064,52708,55229,62454,62119,63218,41925,
59092,49633,62455,53931,58843,53717,63219,41926,55531,47610,59091,51445,57051,49332,59369,56263,
49359,46830,63220,41927,48625,51162,52668,45254,56774,62120,48808,41460,41928,48617,57587,47796,
59874,49084,49884,61124,62121,41459,41929,51667,53742,59875,49341,62456,60323,61125,46559,63221,
41930,51412,50419,59583,53738,59368,54751,62396,54498,61126,62122,63222,41931,46291,48872,59586,
59877,60104,54746,54763,62123,63223,41932,43172,50900,62905,46756,63224,41456,41933,43170,57588,
46329,59380,49338,62397,61128,45820,41934,49880,46511,47804,59876,54504,45731,61127,62124,41935,
54450,51135,54185,61129,62125,41458,41936,45782,45750,45485,53683,46243,49385,61939,54186,61130,
51367,41457,41937,55248,51366,58870,48604,51938,46840,56787,53674,60384,58848,51109,41938,51915,
57590,45776,52131,53236,55281,61131,51450,41939,52219,56260,57589,60093,59370,51448,61132,63225,
41701,41940,43176,54732,59587,59880,58786,50092,63226,41702,41941,43174,47286,60592,59366,61926,
50381,62636,47024,63227,41703,41942,43194,53193,59590,50673,53446,46582,63228,41704,41943,61927,
61133,41705,41944,43180,59595,53235,61135,41706,41945,43178,49356,59878,61928,48063,63229,41707,
41946,55770,52208,59879,47355,58849,61134,63230,41708,41947,55536,59372,51896,62459,61929,63393,
41709,41948,51114,55784,48369,59371,53971,47812,56806,45532,47302,63394,41710,41949,51671,48059,
59596,54963,51642,62458,54469,53456,53755,61136,63395,41950,43184,55534,46519,54954,45266,53724,
61137,63396,41951,43182,52169,58850,61138,63397,41952,46330,45285,45252,54756,61426,58852,46811,
41953,49646,47540,59093,59881,61930,47808,45998,41954,53972,52976,50677,48299,59882,59365,48856,
54437,54995,63398,41410,41955,54472,55800,58788,47017,56775,50374,63399,41956,57062,59367,48579,
45493,63400,41957,43188,55533,57591,58854,47545,61427,61931,53198,58851,47318,45550,41958,43186,
59094,58787,46796,46296,61139,63401,41959,53959,47593,45227,61932,56800,61140,63402,41960,43193,
55535,45308,52673,46513,57059,59585,59883,49892,48598,58853,54463,63403,41961,50119,46290,48861,
51157,41962,49852,52727,62462,61933,53699,57817,48891,41963,53465,58856,62457,61934,52953,63404,
41964,51877,58855,57055,59594,59374,51887,61935,47539,63405,41965,43169,53750,58857,48292,61937,
61142,49627,41966,62460,61936,53976,61141,63406,41967,55001,59095,58789,60854,50645,62964,61144,
41968,55538,55785,45482,46539,61143,41969,54490,46263,52982,59884,59379,60855,56801,45810,50597,
63407,41970,55541,57035,56279,53965,48605,47842,59359,61145,41971,48382,55787,56281,55017,57833,
61146,41972,48347,53954,56053,51118,41973,56280,57056,62461,61890,61147,41974,47591,57834,50413,
54765,58785,52985,61938,45753,56056,51119,41975,56284,53454,47023,61148,47079,41976,51406,55472,
56285,49622,59373,49139,46842,56054,45735,41977,48047,46552,52654,59588,60856,45549,62965,61149,
41978,47069,45489,60591,59378,49899,61940,61891,56055,61150,60585,41979,53733,53190,50102,50617,
51632,53934,61151,60586,41980,47042,46039,56282,46798,59377,57031,56791,51648,62967,61152,60587,
41981,55502,46560,47611,52170,46020,61153,41387,50931,45770,54950,54003,58622,62625,56058,55274,
60588,43173,55251,45547,59592,45556,55794,53455,61154,54481,59101,45280,46044,47825,50375,61155,
45554,52133,62966,48344,50862,56283,59102,50669,46814,60857,46498,55032,61156,60589,48563,45985,
49111,51930,51936,61892,50098,45294,54219,60590,49135,56287,54480,46580,54502,47522,56793,52474,
54723,57061,59381,50934,62627,56792,45740,55544,53179,55254,54192,59584,46574,49075,48073,47344,
49637,41455,43175,53953,48120,46310,54726,50420,56790,53424,61157,47049,41454,52207,57820,59589,
48089,61941,54996,51110,51891,55504,54967,59098,57057,59591,60593,62626,56057,50093,52969,55491,
52429,60860,48319,56288,55246,50942,51129,58792,50680,61942,62969,54218,61158,47100,53410,57821,
47075,53987,50895,47786,61159,47013,47051,50629,58793,53712,56226,61160,53469,50127,53979,59593,
58790,46765,61893,51185,61161,55209,49604,62656,62968,61162,48889,46009,49117,60858,49659,61894,
56060,61163,58040,55505,59103,45515,53940,59602,60859,54960,56059,61164,63439,48318,52963,61943,
54444,51675,47035,47554,48882,53730,61895,56061,61165,55002,59099,59607,50360,56802,61166,54213,
56272,53671,52729,60863,45248,56225,61167,48111,52398,54775,59605,50111,51186,60864,47865,62657,
55262,43177,48097,49074,57822,48348,62628,61944,54497,56062,55537,48053,47778,48335,49349,60868,
56807,49626,61168,55288,49871,48822,59611,46782,49389,49578,62658,61169,49107,46333,55481,61170,
51617,55467,49875,45512,58791,56229,61172,52912,50853,57823,45519,58794,49648,60872,46288,46332,
61171,46251,51192,47836,52413,45521,59376,50872,53949,57824,46008,50686,60870,45758,56794,50651,
54260,61173,55539,51947,48050,60878,62630,48859,52653,49129,58862,49865,48595,45520,54760,62629,
49147,49857,51659,55506,57825,56803,56231,61174,55542,50404,59100,49112,59614,50091,59382,60873,
56228,61175,49879,48353,52678,52214,56799,52411,61176,41418,55543,51886,52403,47093,53722,59610,
56232,54689,56286,53484,46315,45562,60871,56797,61177,51111,45267,60862,53171,52913,52971,52669,
57060,53476,48572,61178,55545,55462,47064,57053,54705,61179,55225,51430,57063,50665,51709,50882,
57826,61180,41415,52967,60158,49353,61181,45742,48092,50421,46531,48302,56227,61345,41414,47552,
45291,49316,50631,59554,50886,46553,52704,56230,61182,57827,49840,59553,61945,54947,61346,55715,
52409,58802,57058,46287,47349,50430,45272,51689,56233,50170,45289,48042,56295,57828,50355,60324,
54482,61347,53421,56289,52220,54976,47308,47809,60865,56795,61348,49638,50874,58803,46503,50914,
60866,56796,61896,48578,45488,56291,54700,51390,60867,56798,56237,53951,51692,55268,45812,51425,
55233,60869,55795,45817,41420,55231,56296,54254,54265,52410,61946,48559,61349,63440,52165,51928,
57064,49401,56804,61350,46501,50679,45234,59386,56238,61351,41432,43181,52166,49908,57074,59599,
59385,46241,56805,56236,54008,45773,41438,55716,50383,52174,59604,60325,47810,61352,52714,59606,
59387,55037,41423,56298,60327,45499,61353,45737,57829,47601,59383,50892,47850,59608,50905,47592,
53166,49060,45751,56297,53677,57069,55285,59390,56235,61354,46568,49088,60328,60880,61355,41422,
45541,57073,50427,59389,49588,41442,57266,58805,57830,56821,47268,61356,41412,46507,54716,52898,
59612,59388,56234,53242,41413,41441,49064,56294,58804,51424,60326,60850,50121,54471,52216,41417,
49836,56293,60881,60849,45759,61358,41416,55509,55258,45801,49621,61357,41426,49841,47577,58795,
51161,60874,52194,46074,55014,55265,58797,50685,52192,61898,56239,47608,55508,46760,57071,50627,
60879,53982,61359,41427,52923,52948,52720,57831,50152,59601,47609,61360,46541,46265,53963,52449,
52984,52161,53474,55201,56032,49324,45478,46530,60329,54744,56818,56240,61361,55284,49826,51893,
45797,48365,60331,61899,61362,54227,52928,56290,60330,52150,51426,47078,56292,46056,51181,60876,
53439,41440,52453,51699,49090,58796,60877,49375,61363,41439,55476,49101,57832,53950,59597,48289,
46011,61364,41411,47822,50094,53499,48085,55033,50135,45763,61365,41419,54177,51922,55777,49617,
51441,55714,52899,53453,58806,49656,60332,59555,52448,55772,56301,48066,45809,46502,61366,54240,
48308,51919,53237,55216,61367,43185,55549,51380,55477,61897,61368,63441,47088,49873,53444,50161,
60353,61369,41431,55287,53212,58080,57070,61370,55550,48877,47532,45528,50085,49376,55521,61900,
46780,54752,55546,53430,49373,53988,57067,50936,62668,53412,56241,61371,55713,56306,52949,60333,
55249,46317,50403,56033,50378,55010,50897,50090,58081,46247,59615,61372,54487,60334,46791,56820,
61902,46837,54198,51905,60335,47320,61373,55540,48329,59609,60336,60352,56242,61374,55773,51172,
47782,51404,47061,58799,47310,61375,53735,60882,54772,55798,41430,55547,46818,53244,58083,49067,
49650,60351,56819,52989,45991,48338,60670,48830,54194,45990,56816,53985,61376,50661,60669,54692,
47098,58798,60875,47561,54435,49888,46834,58807,57263,51383,54955,46264,41429,52476,51421,48594,
45546,60337,59558,47067,56812,55222,49360,49402,56307,54715,51170,47092,62659,48629,56274,59598,
59557,47050,56815,51385,47544,58082,59600,60339,53191,53744,49399,54443,49133,54974,46768,59559,
56808,61379,45275,56300,45558,52732,57065,59603,47780,47863,61377,53689,52190,50086,53749,59384,
48359,61378,53729,49105,54446,59613,45233,59556,47038,53486,61380,48337,55495,56304,49336,60338,
48367,62670,60358,62660,46759,55718,48325,57054,60340,51440,49571,48380,56273,58307,51959,51626,
60359,48866,55717,48324,57066,45241,61901,50124,46566,54010,52136,50889,49103,51416,61903,61381,
50140,54994,46506,50672,56814,49123,61382,56299,49116,58087,49864,46294,60357,61904,45513,49125,
50908,51176,54707,54269,61383,55724,45790,49343,49397,56809,61391,55726,58088,60341,47584,60360,
61908,61384,57068,61385,55723,49381,56302,47291,45811,52142,62672,56810,56244,61386,41433,51897,
54215,47337,58335,58800,62671,60361,52210,51138,41428,47857,56305,49831,62673,61425,63443,59625,
52186,56813,46797,63442,50114,58092,54208,47054,56243,61387,41436,41449,55721,55496,49132,48577,
59561,60886,56245,41437,41450,54966,56313,47790,62674,60354,45517,61910,61388,54445,54434,58093,
53411,46575,60356,61905,61389,41982,58085,47589,54465,51702,46790,55771,55008,54999,51665,50110,
41892,46046,53217,49845,54733,50657,61390,55720,55497,46016,57077,45229,53426,57080,52641,52201,
60367,61392,49405,55498,54957,52920,49334,61393,53187,51187,53758,47072,60368,49891,61394,41434,
51916,50414,45739,59634,59560,45486,48315,47612,54770,41435,46072,47521,46244,55018,58801,46504,
56817,55722,48839,45219,51166,60884,56247,61395,58043,50351,58094,55776,49592,61907,50423,55719,
45804,46314,48099,56823,56246,48290,51622,61909,61396,47569,53443,47802,52715,49595,56822,50424,
58044,55728,55499,58338,59562,46562,62675,45491,56811,61397,58045,47862,48812,60370,61398,58046,
58811,58089,59616,59565,60885,52389,47571,47332,58047,46769,49905,49608,47070,59617,59566,60883,
45492,45303,58048,48051,60887,54762,61399,58049,52396,57078,49575,47290,56248,61400,47033,46023,
54703,52171,52177,53163,50670,61401,54011,47529,56303,58084,53753,48112,46586,46306,47537,48548,
56268,58086,47331,47819,60641,45766,61402,51918,53952,58090,47353,50160,59567,60888,54512,61403,
45477,56312,58091,57079,58336,62676,50646,56827,61915,53197,61404,52167,57082,51655,46534,60889,
62677,60371,45276,61405,53184,50898,58812,47345,48082,48811,54731,58050,51365,56308,54484,47801,
59568,60892,60369,48117,61406,46844,58814,58103,59631,50655,54986,48821,51396,49858,45516,62678,
60366,47031,56249,61409,58051,56309,57081,59630,59564,51876,47830,52400,61407,48580,53208,56311,
58100,59628,53684,49641,60373,50870,61408,54764,56310,54517,47600,58337,54510,59572,45307,45309,
45537,56250,48584,45792,51454,58099,52434,51434,62683,61913,47546,61410,51144,45774,52418,59622,
47535,48836,55036,61411,45565,49131,56318,52902,48557,62679,47866,47585,54223,49613,58052,55725,
46311,50605,45281,49138,46040,62682,56996,47009,62714,61412,54258,46804,46318,52955,48378,51189,
61413,46838,55727,45754,52162,54778,45240,55238,50678,47869,55479,60122,55235,61414,58053,53680,
50626,59633,48366,61923,56995,61912,60123,50660,61415,50393,52970,54230,46524,45760,59632,52416,
54486,60890,62680,61906,52473,62716,61416,47854,45798,45779,52412,62681,60362,61914,47603,62717,
61417,48304,56317,55232,60606,45802,60363,60124,62715,61418,58054,54225,51929,58095,60364,46331,
61419,53210,52139,58810,59620,58344,59563,60365,50099,48838,61420,47581,47028,47074,58098,58345,
60374,47057,49368,58055,49583,52649,52724,59569,59072,47832,49313,51158,52156,51619,60097,60891,
60377,61911,60125,61421,51684,54516,49581,58056,47010,48056,47330,49128,60126,53487,61422,45814,
41425,48555,46497,53423,48603,52423,53960,48342,61423,56484,58105,59626,49839,62684,60375,51436,
48095,61424,58057,51941,52397,46262,50411,60380,56824,60127,47059,56315,52926,45803,45786,47340,
49630,49651,51361,55280,48307,60376,49848,53218,58058,43171,51932,48305,60321,59573,46277,54495,
54477,58059,45540,58097,58346,53719,59570,50131,48570,52682,55242,52394,49912,43179,45539,53488,
53460,57076,59571,50159,61917,60128,58060,56314,54457,58347,53464,60129,58061,43183,50641,53409,
58101,45301,54499,49915,60132,62882,58062,47574,51683,46004,49079,45239,60130,62881,51927,43187,
46297,51673,58102,57075,53466,60131,47784,55480,41421,46829,56316,45274,59618,51378,60381,58813,
51678,62718,55781,43189,55732,56261,50656,53921,59619,49083,60895,50396,54753,47283,52182,45988,
53219,46590,48121,46843,45559,59621,60608,49370,46788,43190,59096,51155,46517,50939,46312,60133,
48354,52399,59623,47066,52917,61916,51946,43191,49114,56483,51141,54987,51661,62884,49057,47557,
46014,59627,62685,54956,61918,46285,49362,43192,48868,59629,51167,49645,56485,51664,48560,53962,
60607,50637,46058,58096,55214,52950,60609,56829,58073,55774,57270,52419,59097,46304,50658,52650,
51150,57269,45986,59640,58340,45772,60134,62885,49406,54971,57072,58348,59575,60893,49333,62883,
55736,48592,49092,50612,49910,48564,61605,54745,46801,52132,51698,48313,55224,62888,45256,56768,
55260,46017,60135,46755,57036,60833,55212,62889,56496,49097,60894,60378,61919,51452,48589,52392,
54216,54698,58343,60379,55507,50104,52183,57267,56481,57037,58104,54496,55501,49121,47101,51895,
59637,50922,53221,54494,52193,54226,56482,53922,60837,50915,50388,50408,62890,55733,58110,52656,
58341,62697,60383,51935,54521,55503,51921,59638,60613,50599,51652,55735,53942,57083,48870,55797,
54190,45475,47813,51125,60851,52415,53173,47315,62886,54241,52158,57038,58342,50650,45745,46048,
62887,55737,52414,48828,50416,60388,51682,53445,57271,46825,60614,62710,46576,48581,55734,57268,
48845,49589,51635,45566,50341,56487,48080,46301,49594,50662,51134,47829,62892,55729,57039,60386,
56826,54261,50342,59624,60612,56828,62711,46268,55730,49110,54696,59574,60896,56830,49577,46036,
50103,47541,46563,56994,55277,55731,47351,56486,51884,47843,45296,45226,55263,54012,57085,50107,
60610,45518,46295,57274,56489,46047,49590,52937,62891,48371,45476,58858,52129,58339,46051,62705,
62894,53470,47823,50401,50621,60897,47280,47273,48298,48801,49572,54740,46581,46540,52914,49881,
60611,60899,47311,62893,48867,50418,60838,45783,52152,57004,50928,62895,52652,48854,60835,49347,
47567,62661,53457,55741,50171,50856,59636,58349,52478,49623,48627,47859,45795,48038,61612,60387,
49396,60834,50349,52674,49072,50174,61613,48071,56998,53234,48851,50337,59639,58352,47276,48566,
55738,57272,57249,48858,49618,50864,51439,53189,45290,52689,45235,51196,48086,60616,51391,60389,
61920,50129,49856,52459,60839,47523,58363,46019,51369,57273,53727,48620,53492,58357,52703,49904,
52957,47827,48568,55746,60385,62706,60836,45996,51898,47838,49612,49587,48893,46786,50881,46839,
60898,58860,58273,57084,47056,52184,62896,49631,53436,46770,48879,54221,62897,52684,52465,52941,
52215,56993,54461,54007,47527,50866,54990,60081,51191,47053,51666,54739,50850,57281,54713,53154,
47553,56997,51105,54708,47846,57284,53720,49363,48628,50126,60082,62898,58861,49106,52960,55026,
62708,55748,47089,49382,50879,57001,45494,45257,46281,55247,62899,46806,46833,53433,52467,62707,
62900,55743,47060,46021,51190,53708,60900,61921,62901,56488,51956,58106,51446,60390,47788,58107,
52211,49371,46521,52477,52672,58109,49328,57000,49108,49861,58108,52154,52445,51370,53944,52983,
48883,52145,50389,57086,53429,45748,49086,60391,62903,50932,58863,58274,60083,53930,62902,50138,
47027,56999,54952,49860,54209,57252,51937,51669,61947,52424,57285,52218,58864,60615,47279,47858,
60403,59635,48098,47277,52427,53968,52962,58350,54759,60902,47282,62904,46003,58279,52428,60392,
55747,51140,55218,48637,51131,52188,58364,51400,52723,51364,52988,58351,48616,46261,47016,53161,
52222,58872,58359,60901,57005,45995,52935,52685,53156,58356,60394,47856,46007,60395,54476,51645,
56825,52961,52417,58281,48364,55749,47799,47034,60084,48875,53693,59641,49603,52713,60085,57011,
45769,55750,50594,60397,57002,55739,57280,50667,60086,57006,54228,50399,51451,58280,51147,58358,
51917,53977,45733,50653,62709,55742,46324,57768,48090,46313,45736,49369,49391,55745,50142,50940,
47081,53448,55267,55000,55744,46026,58275,55211,47306,50623,53936,50117,50917,50400,57264,60402,
62912,49599,58309,47334,51701,60903,51649,41424,57275,56490,54252,47607,60398,48624,58310,50417,
58276,55202,52464,45473,62907,61615,52202,58282,50412,57014,45525,48294,50929,49377,62915,52938,
61616,58278,57250,58361,51706,60401,57009,46259,50169,50373,57251,45300,51902,51449,62914,51442,
52462,52978,60650,58311,50616,57276,56491,54214,57253,58362,49393,53756,54970,53200,53691,57277,
55256,58365,53705,60396,62913,58312,54702,57278,57772,47795,52393,47800,51687,48356,61617,50619,
48060,58355,51707,58313,61618,54965,57279,48300,60651,60393,47274,58314,61619,57282,54206,50926,
57010,54462,50118,61620,51171,54449,57767,54467,57254,50671,54211,62916,54690,61621,57283,57769,
45507,52134,50390,53692,50426,49374,60852,60617,62924,47595,51130,58353,47270,47289,52933,53740,
52952,57770,58354,61614,60652,53209,58315,55752,57775,60840,51651,60618,45506,50405,50166,61623,
53500,52420,58360,50925,60399,58316,61622,58277,53434,48064,58808,60653,60400,45263,54439,45805,
50883,60619,52463,52442,46584,47015,48345,50165,59814,54515,54217,52680,47347,52690,55754,50392,
57771,58366,60642,48343,45298,62921,47826,61624,47322,58285,45498,51690,53670,62922,58317,61626,
57290,56275,57773,45487,47065,60406,57013,58318,61625,57774,45785,48608,46567,50652,54468,61627,
55740,57295,56495,57776,58290,51174,58319,61628,56492,46522,50384,55755,55004,57777,57255,58535,
46569,58320,50859,48819,60656,53707,47339,48322,51164,61102,53493,60405,62917,58321,61629,51963,
58534,48045,62918,58322,47848,51629,55270,45746,57007,58323,58284,60659,58324,61630,57779,46527,
59810,59358,62919,53718,61631,55753,56493,57784,57256,49378,53747,48379,62923,58325,48873,60322,
58531,48569,61103,60657,57008,47579,45819,61632,57289,60654,47328,48864,49339,46828,57306,58537,
60655,53437,47590,62920,58326,61633,52918,49091,55203,62698,60407,50137,47354,61634,55286,51697,
51923,49323,61635,47815,53714,45993,52206,60136,58327,61636,52643,57294,52179,51447,60660,57012,
49344,58328,51381,57288,57782,51177,59646,51949,48885,62928,58329,61637,50654,51658,57781,58288,
47575,61106,60658,57017,60137,62931,61638,50361,49643,60620,60138,58330,57258,59643,53734,45548,
60139,58331,61639,51691,53172,60621,61105,53225,50676,47860,48810,57257,48615,60140,49127,47287,
50172,57783,52719,58536,60662,52421,60141,56034,61640,45761,58542,61104,50865,50340,60142,47602,
48545,51133,54464,59812,49893,52919,53157,57016,60143,62908,46803,48855,56494,51387,48583,62925,
57778,57015,56036,61641,57286,46772,56035,57786,48115,53966,48320,49847,61642,57293,54518,45238,
50639,62971,63421,53478,60661,60409,55756,50648,61643,52456,52472,61644,60578,62973,61645,57780,
59811,48626,49652,57019,48377,58287,56270,50674,62974,56038,61646,54694,49145,54962,58530,61107,
62926,47821,58289,55221,53491,60410,62972,62927,57785,46523,62929,48844,50347,53159,59815,47849,
48118,46821,51438,54205,46805,58286,58538,60625,62930,61647,50620,47296,57787,48567,60663,47831,
52661,52905,48613,48610,62933,56037,55012,48093,58540,47040,61648,63137,53748,61649,57287,60627,
46245,54005,61650,55757,47550,46845,49876,51653,54771,61651,49063,55006,48077,50920,55799,48599,
61652,57790,58546,48635,45784,61653,55751,46571,50634,48357,50154,61654,45989,49660,48869,58541,
63138,62909,61656,49150,57291,45778,47020,49851,57292,46029,60664,57018,55272,58079,56040,54181,
57296,45497,59644,58529,60414,50618,63139,62932,56039,61655,57788,58283,59645,54203,47285,45777,
48110,45218,61657,46508,52701,60665,46060,52691,47583,57259,51106,60594,49404,56276,46824,59809,
50633,61108,62699,52686,56041,57307,60577,52388,57317,46059,45531,57020,47293,54981,53227,49655,
47267,54199,48330,57303,58295,60623,49853,45304,57302,45530,58532,49828,55241,48076,51639,48123,
53980,62934,46018,57315,51123,61109,56042,57316,54492,48556,62700,62906,58859,56277,51399,52694,
48573,49834,49849,53927,53450,58533,60413,52441,50352,57298,53183,48565,53932,55239,50106,60411,
53716,63460,49065,45794,59356,57789,51393,60643,60666,53214,54491,57791,58539,54741,47018,62935,
49869,58296,59826,48323,60624,48865,49901,49096,46062,58543,61110,62936,54438,63461,57300,46827,
56043,52692,63462,48107,55786,51650,53681,54264,58544,48558,52447,46043,56278,59817,50600,62939,
51197,63463,53196,60841,58545,55027,51149,45749,54266,49855,57309,47806,54244,46250,61922,45533,
59104,47077,60626,51899,46326,53706,57260,46267,54755,60622,60667,45768,59105,49059,55257,59106,
63464,55758,57310,60842,51944,56044,48852,49844,45223,58297,59819,58554,62937,59107,55759,50871,
53986,53961,46776,55204,46242,57299,58551,60628,61658,62938,54458,52693,55760,48880,54501,62940,
59109,47845,58555,60629,61659,46077,48349,46012,62946,59108,46303,46815,57261,61660,59110,52699,
48894,58293,54951,58557,51647,49606,57021,56045,59111,47614,54473,49902,54485,47341,60668,60080,
62944,53205,63466,51392,50902,48846,50659,48574,59112,63467,45249,57311,54238,60087,55252,56046,
49894,53228,60342,47814,61662,57023,62943,47783,45221,57792,51925,49355,53160,62635,62941,59113,
57319,57793,50609,54253,46068,41382,57297,55548,61661,55470,59114,53702,51903,47312,47300,53745,
49387,62945,46034,41381,57301,51401,57799,58291,53416,47265,56047,53737,49907,57304,46055,47525,
58548,61664,51165,55761,57305,55219,53468,45260,47820,62942,56048,51637,57308,58294,59813,48618,
54977,62948,49642,49061,51705,47071,47045,53475,54978,62949,52437,59115,48041,54782,52157,53213,
50927,58292,46078,54433,52451,59116,57312,49095,49314,53676,52666,50338,59117,57313,50921,59820,
47779,53983,58815,57314,47864,49379,48638,61663,47313,46520,59118,57318,58298,47562,54761,62947,
50861,57320,59818,51419,46255,48842,57025,62952,59119,54196,53948,47080,45564,52387,46302,53415,
58556,61670,62631,51623,62704,62669,59833,61669,51183,59120,53698,60630,50851,53928,59121,52981,
61665,54998,62632,59122,46544,59832,61666,62633,58809,62703,47335,46275,62950,54247,59123,50614,
52671,62634,62951,49825,59124,57322,57800,50164,49094,48843,49890,49897,51674,58042,61667,50155,
54239,56049,59125,53233,49576,48840,59822,50425,51948,54766,59126,63457,50372,46246,57798,60634,
55016,63458,41377,61429,52197,59127,41378,59642,53243,52443,63140,41379,49118,45496,60343,51686,
48850,62910,56050,59128,41384,53240,45245,48306,50136,51680,48376,47559,59816,51681,57022,52198,
41385,55762,57797,54207,54014,48070,54456,48588,57024,47356,54748,57795,53201,60633,61672,62402,
41396,57326,47284,57794,49586,61671,41397,49605,61668,51942,47348,41398,48044,53188,45504,45526,
49068,58547,45729,55266,55780,41399,46254,45992,59825,45246,52466,61114,63419,41400,48868,59834,
58552,54946,56051,63418,41401,58553,54200,45231,41402,54712,52457,48823,61431,53174,51954,41403,
50933,45752,55783,57796,46280,47314,49829,51372,46035,45508,49384,41406,48624,53158,51618,61604,
41407,49326,47839,52706,58299,51160,54735,63422,50382,57324,60631,61674,53741,58038,62911,63420,
47834,41470,48069,46808,59823,52148,47777,41394,56257,55789,52430,60632,54984,41395,55766,46816,
57803,51703,47301,52968,54714,46533,63423,51117,41404,51630,53732,49364,61432,55003,45796,41405,
49885,53945,59821,58549,53751,63424,49891,51685,60344,49584,60644,61430,62637,62956,48820,54236,
58550,54988,62638,57026,62953,50348,47547,59828,52944,47835,48125,62639,49893,55765,52212,59829,
61673,46022,46807,63426,49363,55764,46269,50365,59831,48065,52205,63425,63468,59379,55767,51965,
46547,46779,62957,63174,63428,63469,49892,45222,57804,63470,49362,58041,57802,51139,51443,62642,
62954,58039,59847,48551,52660,63427,63472,54779,54727,47805,63471,49873,52187,46323,51628,51388,
62643,47266,50854,48597,45283,63473,48553,57329,52460,60843,47091,58570,62640,52422,52395,62955,
56052,57330,47090,53958,62641,63429,63476,49350,58572,49569,48546,63430,55474,61434,59845,53700,
61675,48096,45781,46298,58308,63475,57325,53739,49917,61678,50855,47803,62646,62126,54506,63474,
49325,57811,59824,53946,61677,53153,62647,48034,49573,63477,51879,57810,61680,46822,49842,63431,
51126,49607,61676,61436,45744,50608,49352,48091,59835,47789,61435,53199,49863,62958,63167,52200,
49354,52663,49070,45297,48062,62644,49355,57321,61679,46252,46073,63478,49351,47828,61433,62127,
63168,53956,62645,63169,49124,60636,50385,47327,49380,48336,52932,53728,55763,57323,46817,52405,
62648,51384,55768,61682,46028,53731,57327,57029,52927,53481,57328,54699,58563,51668,62959,48061,
57801,45555,46573,46037,52144,62961,53467,49359,55769,59836,53701,63444,60905,54693,62649,54237,
48303,57331,57030,57806,58300,54706,47565,63445,60906,49847,56252,60595,55245,62960,63175,60907,
49846,57808,49078,45279,59838,58560,45524,52647,61428,57332,53721,53245,60635,61438,60349,63164,
60597,59839,58559,62650,42145,49845,51429,48035,61683,46278,63446,42146,50918,45278,62651,54202,
42147,51931,50382,63170,42148,52904,47086,46775,59841,49628,54511,61684,46075,42149,57511,52426,
61686,54985,62962,42150,49849,45994,47068,49615,60637,46305,62652,63448,42151,49649,62963,63171,
42152,57510,62970,61681,46054,63450,42153,50602,49148,53425,61437,62128,42154,55264,57812,51382,
51943,61687,46577,63447,42155,46061,62129,42156,49358,57505,50933,57809,54757,63459,54270,63165,
42157,49370,57805,56262,52444,42158,52947,59837,63189,51885,63166,42159,49367,45500,50391,61690,
52178,46758,42160,49372,57032,57807,42161,57342,48561,48623,52436,61688,62653,55486,42162,52439,
45551,46050,58568,47025,42163,52697,57034,42164,49833,57340,47275,59842,51693,63451,47556,42165,
49371,57033,57813,54519,61685,47530,63173,42166,57338,54710,58567,62654,47847,51908,63449,42167,
49834,58561,62131,63176,42168,49365,49104,60861,60638,62701,62133,51195,55483,42169,49375,55236,
58564,62132,42170,46799,46509,61693,52196,56497,42171,49640,51660,46572,58302,53178,46819,42172,
52153,61689,62130,42173,51677,53442,59843,54233,61692,51892,54250,42174,49634,57336,61694,52936,
53967,63143,55255,42175,49642,45217,59827,58566,62655,49900,53673,42176,45250,61857,42177,59830,
51955,42178,61602,42179,57814,48049,52425,63452,63479,42180,46500,60845,54009,52929,61601,63145,
42181,57341,46307,45484,61860,62686,42182,50605,47037,46526,49596,42183,49866,59840,48052,61859,
48346,48360,52931,42184,48124,62136,63144,42185,45489,60598,49654,51627,45302,42186,57339,51881,
51694,61691,47333,53726,62135,63453,42187,45539,57506,51933,58869,49635,42188,46270,49367,42189,
45755,63480,42190,50138,46841,50606,58303,50644,48375,46321,45474,63454,42191,55459,50603,47785,
45553,42192,52215,54474,60844,60601,48108,52401,56499,62142,63481,42193,57512,50380,60600,50370,
53973,42194,51451,54442,49859,59844,53709,61862,45775,42195,51873,53462,48361,58301,60599,59846,
52973,42196,46052,52221,52461,56500,42197,54743,60853,61863,45228,53480,42198,47048,56501,63147,
42199,46013,53192,60070,42200,51698,47586,47811,53501,61868,63483,42201,51888,50849,60602,54734,
48602,53697,53238,42202,51444,49099,51638,57815,61865,62138,63455,63482,42203,49875,49330,60603,
56505,63146,42204,49876,50146,57333,58873,55269,60639,61603,54768,45511,41386,42205,49601,51431,
51379,63148,41388,42206,58874,57816,58304,51173,50105,63456,63484,42207,49593,50622,52733,60604,
55490,63485,41390,42208,49594,46802,59850,62140,41391,42209,55492,55217,61858,56503,54505,42210,
49596,57337,47294,52203,54259,48116,42211,52675,50422,49896,60605,54440,61867,63150,41392,42212,
49599,55790,50924,61864,51670,62139,63149,41393,42213,55792,51409,47798,59854,58571,61861,56506,
62134,63486,42214,55253,56502,62143,42215,50606,58562,60640,62141,42216,58875,61866,56507,50398,
42217,49859,46515,46766,48549,55206,50082,62137,42218,57507,58565,56267,42219,46773,57508,50624,
49624,42220,57509,62151,42221,53413,46794,52958,54246,62148,55466,41389,42222,48331,56508,62150,
42223,49384,53432,48328,58569,60348,56517,42224,49574,57524,45787,51704,45230,56509,42225,48804,
52452,53757,45251,45225,62154,52138,50923,42226,59041,60846,51413,59848,61869,62146,60596,42227,
57521,46505,58558,55275,52959,62144,53180,50410,51435,50158,48841,48884,54949,49062,54972,47288,
57519,54503,54245,53935,56527,58871,51371,52921,45270,62149,47597,41451,57515,57818,60847,46585,
56525,51654,59044,49345,53678,51198,61871,41444,45259,53489,46793,55475,41445,47531,58305,60088,
61873,61606,56530,49657,49326,60089,54524,52140,48614,49149,55778,57518,60090,47022,45747,49835,
55035,48106,47853,58878,47797,58583,58333,63433,49340,47792,59045,53672,56504,63151,50887,47538,
57513,52695,56523,63432,42401,61872,48831,56526,62145,42402,49616,47576,52930,51182,56510,63152,
63434,41465,42403,49619,53451,47041,51889,61870,61878,47058,51193,63436,42404,53706,45560,57334,
58876,49141,58573,61879,45253,51679,63435,42405,49618,50916,58877,49109,56519,63153,42406,49617,
48863,57523,59043,57819,52924,50860,53438,62152,42407,46564,52730,45286,56513,47558,49846,42408,
49582,55240,47323,53666,48040,46512,63437,42409,50414,57528,50397,42410,50413,53752,59048,59851,
46249,47036,52922,42411,48358,59852,58582,50630,61880,56524,62147,42412,51934,60345,52667,62702,
62153,63438,42413,46253,59047,50611,60096,49098,62160,45268,41689,42414,49646,57529,52897,51156,
56518,62166,50681,41690,42415,42657,57586,48317,45242,54701,56511,50343,41691,42416,42658,55782,
60094,61874,59129,51163,41692,42417,42659,55527,53170,54222,60346,61881,48832,48087,41693,42418,
42660,49583,47816,54721,59130,41694,42419,42661,49633,49317,50156,61882,47852,63154,41695,42420,
42662,50394,57520,50115,50339,61875,59131,53695,41696,42421,42663,49639,60347,53195,56512,62165,
41697,42422,42664,61942,50910,59132,52700,41698,42423,42665,47316,60091,54460,42424,42666,49635,
51389,53696,51151,48310,56522,55019,42425,42667,59050,45821,59133,42426,42668,50595,59134,42427,
42669,49405,45793,50167,59864,48333,56528,62162,42428,42670,54489,53498,59357,58306,48104,50632,
60146,53924,51410,62164,42429,42671,62903,47841,58584,47599,54991,52915,42430,42672,46248,50354,
59297,52909,42431,42673,55005,56514,42432,49611,53975,50357,46535,61883,46271,46045,42433,42674,
49605,50096,50359,52980,49358,48593,59298,56515,47346,63155,41669,42434,42675,58812,53682,60095,
59849,45271,46256,51636,56520,41670,42435,42676,50418,46002,45273,48829,47321,56521,41671,42436,
42677,49615,50145,54179,50377,45780,63156,41672,42437,42678,55970,59042,60147,56529,49636,41673,
42438,42679,49607,51423,57516,51900,47524,56498,60092,52676,50369,55261,52181,62155,63157,41674,
42439,42680,55283,58575,54509,46300,49882,51168,63158,41675,42440,56996,53428,54523,51145,59860,
52975,52945,47063,54455,63142,63159,41676,42441,48862,46532,54973,56539,63160,41677,42442,48892,
57335,47534,60099,49119,52934,56543,62158,58816,63161,41678,42443,50601,48611,48596,61885,47044,
52390,49913,48824,63162,41679,42444,51438,50663,47555,52951,53447,58580,48074,56550,51363,41680,
42445,59046,60848,54195,58581,60144,61607,54749,63177,63163,41681,42446,57517,53461,60148,50598,
50151,62156,48818,41682,42447,42689,49656,47578,52911,45806,47338,47870,59299,56540,62157,41683,
42448,42690,49655,54263,56271,59863,47326,49146,53215,62159,46565,41684,42449,42691,49647,55971,
52972,59856,53222,51708,61884,59300,62163,41685,42450,42692,49648,57526,59049,48314,60071,46266,
59301,49089,41686,42451,42693,49652,54441,57527,59056,53969,53479,61608,61887,59302,56537,47047,
41687,42452,42694,49650,55972,52168,51961,50113,54719,51107,49591,41688,42453,42695,53926,45261,
51414,55282,55273,45306,62169,49087,41649,42454,42696,53175,45224,51696,47542,54204,50130,41650,
42455,42697,49657,48554,46025,59855,61886,53176,56549,50150,41651,42456,42698,49854,59053,53231,
52946,58578,52440,61609,61888,54959,56531,41652,42457,42699,57540,48612,52990,54997,41653,42458,
42700,55803,53473,54737,51137,59303,56516,55500,49658,41654,42459,42701,46764,52718,45293,56534,
46826,47528,41655,42460,42702,58334,51911,59304,51444,60904,41656,42461,42703,48114,60149,59305,
49120,51953,41657,42462,42704,49865,47083,57532,59055,55779,60072,60101,60150,61610,61889,51676,
47343,41658,42463,42705,45561,48621,54717,53164,53999,47076,41659,42464,49397,55804,49361,49383,
48813,62167,47594,41660,42465,42706,49866,46053,57545,50909,60100,59306,55775,41661,42466,42707,
49825,48886,57546,45522,60073,60103,45299,51643,41662,42467,42708,49403,53964,51920,60102,59858,
60151,51422,41663,42468,42709,49396,49142,45756,58576,48609,62168,41664,42469,42710,49860,53937,
59307,62170,41665,42470,42711,53975,49380,57534,52135,60074,51398,45501,62173,41666,42471,42712,
49390,57514,48295,47019,58574,62171,41667,42472,49382,51620,60076,59308,54178,48633,41668,42473,
50400,57537,51878,60075,55015,46783,61611,48102,63141,53669,42474,49389,46771,60152,49662,47352,
62172,42475,49569,55806,57522,60078,53204,59865,53668,56538,45264,42476,61118,55805,60077,46024,
60153,59309,42477,53155,49895,42478,60107,59859,60154,48888,56533,42479,49391,48827,48586,53713,
42480,57592,48078,52659,50875,62161,42481,50404,51912,54730,48600,60155,59310,63408,42482,50407,
57539,57595,59311,56542,52681,42483,49631,50912,60079,50852,48878,42484,57525,59057,53232,53477,
52943,42485,55228,57594,49854,54953,42486,55969,52939,54006,50625,55013,49570,52199,52475,52709,
61924,52432,62179,49593,52163,48634,59853,51882,48332,55234,63467,57549,49585,51662,61925,59312,
50095,50139,63178,49622,46578,57542,55243,57593,46273,48296,47030,63409,41380,49628,49640,57538,
55011,46327,53495,51153,62176,52734,45743,60108,49315,59313,50089,49570,57547,54980,56546,62418,
48373,52702,46555,48039,48550,60145,53496,56536,49327,49571,57530,49830,51641,58579,59314,56555,
62188,46293,57535,59051,53246,59315,56532,62174,53420,54987,57536,59052,60106,51962,46274,48575,
54478,47304,59316,62177,45232,51890,59054,60109,59317,56541,45800,57541,59059,60646,60111,46071,
50163,54718,51710,43205,46284,60645,52908,48805,43206,51152,47039,50144,56535,62184,63410,43207,
46792,57543,59058,46328,52217,52717,54235,59319,63411,43208,52696,57544,54945,45538,58599,45505,
56544,43209,52423,54452,48826,46065,63412,43210,54700,49629,57548,60647,54993,48825,43211,46772,
51374,50664,54722,59320,56547,62178,43212,45481,50429,57531,59062,60105,59862,57835,59321,56548,
43213,54191,55259,51146,43214,53456,59064,53167,51656,60110,47032,49058,54720,56568,62183,43215,
48565,48312,45295,60648,59866,57836,53990,59322,46005,43216,47026,60649,52655,49868,54526,43217,
49322,52974,58587,61877,55226,56545,62182,47596,43218,55459,52180,57596,51926,61121,59323,56738,
53497,43219,47087,57557,50415,57040,48094,52404,57837,45243,59324,56551,43220,45765,54709,59325,
62185,59885,43221,57558,54522,46015,49647,55220,53710,48362,55210,48847,43222,57554,57838,48352,
50149,59886,43223,50376,53165,57839,47824,49346,49878,43224,51175,57761,50891,58601,54220,48607,
59326,62175,51437,63415,43225,45987,45255,49144,59327,47844,43226,55788,48874,46322,46795,48297,
59887,43227,51695,51411,50901,53991,47303,62180,59888,43228,55021,50878,57597,48816,46529,59328,
62186,59889,43229,53990,57552,57598,52986,50636,59329,55009,43230,49393,49069,48334,59063,50097,
58591,59318,48363,59890,63180,42919,43231,51697,48075,52688,46800,46276,59891,43232,53225,46832,
58592,57841,51874,59330,59893,63414,43233,47267,57553,51175,59861,49137,59892,43234,48824,46538,
49080,57840,59331,50083,59894,45534,43235,48811,47298,50141,48807,59868,53162,46546,59332,45799,
59895,43236,54256,56265,55493,50148,60112,59867,50123,55025,48058,56570,54188,51169,63413,43237,
53463,57762,62403,46558,62181,59896,43238,47097,49862,56562,45813,54488,43239,52665,54983,45495,
45536,59897,63416,43240,45244,52189,62404,59333,56559,48590,43241,46070,54453,62194,48815,63417,
48119,49115,59870,58586,61122,47309,59334,56572,59898,53981,56266,49600,58577,47295,56558,53419,
59899,46780,47791,54249,57843,59336,54000,48591,53482,59060,48079,51108,58597,57842,59335,45800,
59900,42913,54500,54964,62406,47084,47272,42914,46518,59061,54493,51420,47868,62407,51415,50857,
49598,42915,46579,49903,49321,58595,59337,51427,62197,59901,42916,55510,51362,57041,60113,57844,
45258,45816,56571,45490,42917,51408,51624,59338,48084,42918,57551,53743,59857,50407,50367,62405,
59339,56557,47605,42920,57533,50596,53182,58594,46754,59340,48072,59902,42921,47062,57763,45287,
62409,59341,42922,52970,51152,50363,46006,58593,47543,60908,52209,59342,62201,60065,42923,51630};
static const unsigned gb2312_revtable_index[]={
0,9,15,23,31,36,44,54,61,69,79,88,95,103,111,117,
126,135,142,151,157,166,173,180,186,192,203,213,221,233,240,250,
258,267,274,285,296,305,314,323,334,346,354,366,381,389,396,410,
420,430,439,448,456,468,476,484,493,498,508,516,528,534,542,548,
554,560,564,571,580,590,600,611,614,624,632,641,648,655,661,670,
680,685,696,703,709,717,724,733,740,746,754,760,767,773,780,787,
797,806,812,820,825,830,834,843,847,855,862,869,876,881,886,890,
898,903,910,917,925,933,940,946,954,963,972,977,982,989,995,1000,
1006,1013,1022,1026,1032,1036,1041,1047,1051,1057,1062,1066,1072,1078,1086,1090,
1095,1102,1108,1115,1123,1130,1137,1146,1152,1160,1165,1175,1182,1188,1192,1199,
1208,1220,1229,1233,1239,1248,1257,1263,1269,1278,1284,1293,1299,1305,1312,1318,
1325,1334,1341,1349,1357,1365,1376,1387,1394,1404,1417,1426,1437,1444,1451,1462,
1475,1485,1496,1507,1520,1527,1535,1542,1550,1557,1566,1576,1584,1589,1601,1608,
1615,1619,1627,1635,1642,1649,1660,1668,1679,1689,1696,1704,1716,1725,1735,1745,
1757,1768,1775,1783,1792,1799,1811,1823,1832,1843,1852,1863,1871,1876,1882,1889,
1898,1906,1918,1931,1940,1945,1953,1961,1973,1981,1988,2000,2007,2016,2029,2034,
2042,2049,2060,2067,2073,2081,2087,2098,2107,2114,2119,2125,2136,2142,2152,2161,
2172,2181,2193,2200,2210,2217,2224,2229,2238,2248,2256,2263,2275,2285,2293,2302,
2306,2317,2325,2332,2341,2346,2355,2365,2370,2377,2383,2391,2402,2410,2419,2428,
2432,2439,2449,2456,2466,2473,2482,2488,2498,2506,2514,2521,2525,2532,2538,2542,
2547,2551,2559,2569,2575,2581,2586,2594,2603,2612,2620,2629,2638,2644,2652,2663,
2670,2675,2679,2684,2690,2698,2704,2710,2717,2726,2736,2743,2749,2756,2764,2772,
2780,2787,2797,2805,2812,2818,2826,2835,2844,2849,2857,2863,2870,2876,2883,2888,
2898,2908,2914,2920,2924,2930,2935,2942,2950,2955,2964,2973,2982,2989,2998,3006,
3012,3017,3026,3035,3042,3051,3061,3068,3074,3080,3088,3095,3103,3109,3115,3122,
3124,3135,3145,3151,3156,3164,3173,3181,3190,3195,3201,3207,3213,3218,3224,3232,
3242,3249,3257,3263,3270,3273,3281,3291,3296,3305,3315,3320,3327,3335,3344,3352,
3361,3372,3380,3388,3398,3405,3413,3421,3431,3443,3452,3461,3471,3482,3490,3503,
3514,3527,3537,3547,3554,3564,3572,3579,3588,3592,3601,3609,3619,3627,3634,3642,
3650,3662,3671,3678,3687,3696,3705,3716,3729,3738,3744,3752,3758,3768,3771,3779,
3785,3792,3800,3808,3815,3822,3827,3833,3839,3846,3854,3861,3869,3877,3883,3889,
3897,3905,3909,3911,3916,3918,3924,3925,3933,3937,3944,3950,3957,3965,3971,3977,
3985,3991,3996,4004,4012,4019,4027,4032,4035,4041,4048,4055,4058,4066,4073,4079,
4083,4086,4088,4092,4097,4103,4109,4115,4121,4125,4130,4133,4137,4140,4145,4150,
4155,4161,4169,4174,4178,4184,4192,4201,4207,4210,4217,4223,4229,4236,4240,4245,
4250,4252,4256,4261,4267,4271,4273,4277,4281,4284,4289,4293,4299,4305,4309,4317,
4324,4332,4339,4344,4352,4358,4364,4369,4377,4384,4389,4399,4406,4415,4421,4429,
4436,4446,4452,4458,4464,4471,4480,4487,4495,4502,4510,4520,4528,4537,4544,4552,
4555,4562,4567,4575,4581,4586,4590,4597,4607,4616,4622,4630,4638,4643,4650,4659,
4668,4679,4684,4691,4697,4704,4713,4720,4731,4736,4740,4743,4749,4755,4758,4761,
4764,4767,4773,4779,4785,4792,4795,4803,4810,4816,4822,4827,4830,4835,4842,4849,
4854,4860,4867,4872,4877,4880,4890,4894,4899,4904,4908,4917,4920,4925,4931,4935,
4940,4947,4951,4956,4963,4969,4972,4978,4981,4986,4992,4999,5006,5011,5015,5020,
5026,5030,5032,5034,5041,5044,5053,5057,5064,5070,5076,5084,5089,5095,5098,5103,
5113,5116,5123,5128,5130,5137,5144,5152,5158,5163,5172,5181,5187,5195,5204,5212,
5217,5222,5229,5231,5235,5243,5249,5257,5262,5269,5274,5279,5284,5290,5295,5301,
5308,5315,5324,5331,5335,5340,5349,5356,5361,5366,5370,5377,5383,5389,5399,5407,
5413,5417,5425,5437,5442,5449,5458,5464,5470,5481,5489,5495,5502,5510,5517,5525,
5534,5543,5547,5553,5559,5564,5569,5574,5581,5585,5591,5596,5606,5610,5617,5626,
5632,5639,5649,5655,5661,5665,5668,5673,5676,5682,5686,5690,5695,5704,5709,5713,
5722,5729,5737,5744,5750,5756,5761,5765,5774,5781,5789,5793,5800,5805,5813,5817,
5826,5830,5837,5843,5847,5855,5861,5865,5873,5880,5889,5894,5903,5907,5914,5920,
5924,5933,5941,5948,5951,5954,5956,5963,5969,5976,5981,5988,5993,5998,6008,6013,
6017,6020,6029,6035,6044,6051,6059,6066,6071,6077,6082,6086,6093,6101,6110,6116,
6127,6132,6141,6149,6154,6161,6167,6177,6185,6195,6200,6204,6210,6217,6221,6226,
6229,6237,6242,6249,6255,6264,6272,6280,6285,6288,6294,6300,6305,6312,6317,6323,
6330,6338,6344,6351,6357,6363,6372,6382,6393,6400,6409,6417,6425,6429,6436,6444,
6451,6461,6471,6479,6487,6498,6505,6513,6524,6532,6538,6544,6552,6557,6562,6570,
6583,6590,6596,6600,6609,6622,6633,6642,6650,6659,6674,6684,6696,6703,6715,6727,
6737,6748,6759,6771,6783,6795,6806,6820,6830,6841,6851,6862,6874,6881,6892,6901,
6909,6918,6932,6941,6951,6961,6972,6982,6991,6998,7009,7017,7025,7036,7043,7053,
7059,7062,7069,7073,7080,7088,7095,7100,7106,7111,7118,7123,7131,7140,7150,7157,
7164,7168,7178,7185,7194,7199,7206,7211,7221,7226,7233,7243,7251,7257,7264,7272,
7281,7286,7297,7306,7313,7322,7330,7341,7347,7357,7363,7371,7381,7387,7394,7403,
7412,7420,7432,7439,7448,7455,7464,7475,7488,7495,7501,7508,7515,7520,7530,7538,
7544,7554,7560,7570,7579,7589,7594,7604,7613,7620};
#endif
